1
0
mirror of https://github.com/azure-rtos/guix.git synced 2025-02-04 07:13:17 +08:00

259 lines
9.1 KiB
Python

import os
import sys
import time
import test_utils
import test_constants
def get_test_header():
notes = "* Studio Toolbar Tests *\n"
notes += "* *\n"
notes += "* Test grid and snap setting dialog *\n"
notes += "* Test grid and snap function *\n"
notes += "* Test toolbar button before project open *\n"
notes += "* Test following toolbar buttons: *\n"
notes += "* align left *\n"
notes += "* align right *\n"
notes += "* align top *\n"
notes += "* align bottom *\n"
notes += "* vertical space equally *\n"
notes += "* horizontal space equally *\n"
notes += "* equal width *\n"
notes += "* equal height *\n"
notes += "* move to front *\n"
notes += "* move to back *\n"
notes += "* zoom in *\n"
notes += "* zoom out *\n"
return notes
def run_drag_resize():
# drag left
widget_name = 'text_input_2'
test_utils.select_project_tree_node(widget_name)
test_utils.drag_left(widget_name, -13)
test_utils.drag_left(widget_name, 2)
test_utils.drag_right(widget_name, 12)
test_utils.drag_right(widget_name, -3)
test_utils.drag_top(widget_name, -13)
test_utils.drag_top(widget_name, 1)
test_utils.drag_bottom(widget_name, 12)
test_utils.drag_bottom(widget_name, -5)
widget_name = 'prompt_2'
test_utils.select_project_tree_node(widget_name)
test_utils.drag_left_top(widget_name, -5, -8)
test_utils.drag_left_top(widget_name, 1, 1)
test_utils.drag_right_top(widget_name, 11, -10)
test_utils.drag_right_top(widget_name, -3, 3)
test_utils.drag_left_bottom(widget_name, -5, 8)
test_utils.drag_left_bottom(widget_name, 5, -6)
test_utils.drag_right_bottom(widget_name, 19, 19)
test_utils.drag_right_bottom(widget_name, -9, -9)
test_utils.compare_result()
#test toolbar button click when no widget been selected
def run_toolbar_button_click():
test_utils.toolbar_cut()
test_utils.toolbar_copy()
test_utils.toolbar_paste()
test_utils.toolbar_align_left()
test_utils.toolbar_align_right()
test_utils.toolbar_align_top()
test_utils.toolbar_align_bottom()
test_utils.toolbar_vspace_equally()
test_utils.toolbar_hspace_equally()
test_utils.toolbar_equal_width()
test_utils.toolbar_equal_height()
test_utils.toolbar_move_to_front()
test_utils.toolbar_move_to_back()
test_utils.toolbar_size_to_fit()
test_utils.toolbar_zoom_in()
test_utils.toolbar_zoom_out()
test_utils.toolbar_record_macro()
test_utils.close_dialog(test_utils.RECORD_MACRO_DIALOG)
test_utils.toolbar_playback_macro()
test_utils.close_dialog(test_utils.PLAYBACK_MACRO_DIALOG)
def run_toolbar_function():
#move widget that already in back
test_utils.select_project_tree_node('window')
test_utils.toolbar_move_to_back()
#move widget that already in front
test_utils.select_project_tree_node("window")
test_utils.toolbar_move_to_front()
test_utils.zoom_in(100)
test_utils.zoom_in(200)
test_utils.zoom_in(300)
test_utils.zoom_in(400)
test_utils.zoom_in(300)
test_utils.zoom_in(200)
test_utils.zoom_in(100)
# click zoom in button 5 times
test_utils.toolbar_zoom_in()
test_utils.toolbar_zoom_in()
test_utils.toolbar_zoom_in()
test_utils.toolbar_zoom_in()
test_utils.toolbar_zoom_in()
# click zoom out button 5 times
test_utils.toolbar_zoom_out()
test_utils.toolbar_zoom_out()
test_utils.toolbar_zoom_out()
test_utils.toolbar_zoom_out()
test_utils.toolbar_zoom_out()
# select 2 widgets
test_utils.select_multi_widgets('window_1')
test_utils.select_multi_widgets('prompt_1')
test_utils.toolbar_align_left()
test_utils.select_multi_widgets('window_1')
test_utils.select_multi_widgets('prompt_1')
test_utils.toolbar_align_right()
test_utils.select_multi_widgets('window_1')
test_utils.select_multi_widgets('prompt_1')
test_utils.toolbar_align_bottom()
test_utils.select_multi_widgets('window_1')
test_utils.select_multi_widgets('prompt_1')
test_utils.toolbar_align_top()
test_utils.select_multi_widgets('window_1')
test_utils.select_multi_widgets('prompt_1')
test_utils.toolbar_equal_width()
test_utils.select_multi_widgets('window_1')
test_utils.select_multi_widgets('prompt_1')
test_utils.toolbar_equal_height()
# select 3 wigets
test_utils.select_multi_widgets('prompt_2')
test_utils.select_multi_widgets('text_input_2')
test_utils.select_multi_widgets('button_2')
test_utils.toolbar_vspace_equally()
test_utils.select_multi_widgets('prompt_2')
test_utils.select_multi_widgets('text_input_2')
test_utils.select_multi_widgets('text_view_1')
test_utils.toolbar_hspace_equally()
test_utils.select_project_tree_node('prompt_1')
test_utils.toolbar_move_to_back()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('prompt_1')
test_utils.toolbar_move_to_front()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('prompt_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('text_input_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('prompt_2')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('button_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('button_2')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('multi_line_button_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('checkbox_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('checkbox_2')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('text_view_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('progress_bar_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('pixelmap_slider_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('pixelmap_slider_2')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('icon_button_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('sprite_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('horizontal_list_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('drop_list_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('vertical_list_1')
test_utils.toolbar_size_to_fit()
test_utils.select_project_tree_node("window_1")
test_utils.select_project_tree_node('radio_button_1')
test_utils.toolbar_size_to_fit()
def run_toolbar_tests(generate, screenshot):
test_utils.output_test_header(get_test_header())
test_utils.setup(generate, screenshot, 'test_toolbar_golden_file')
test_utils.close_project()
print('run toolbar button click')
run_toolbar_button_click()
test_utils.open_project('generic_16bpp.gxp')
print('run drag resize function')
run_drag_resize()
# open grid and snap setting dialog
test_utils.grid_snap_setting()
test_utils.check_show_grid(1)
test_utils.check_snap(1)
test_utils.save_grid_snap_setting()
run_drag_resize()
test_utils.grid_snap_setting()
test_utils.set_grid_spacing(13)
test_utils.set_snap_spacing(13)
test_utils.save_grid_snap_setting()
run_drag_resize()
test_utils.zoom_in(200)
run_drag_resize()
print('run toolbar function')
run_toolbar_function()
test_utils.write_end('Toolbar Tests')