1import test_utils 2 3def get_test_header(): 4 notes = "* Studio Copy/Paste Multiple Widgets Test *\n" 5 notes += "* *\n" 6 notes += "* Copy and Paste multiple widgets *\n" 7 return notes 8 9 10def run_new_project_create(name, format): 11 # create a new project 12 test_utils.toolbar_create() 13 test_utils.set_new_project_path(test_utils.DEFAULT_OUTPUT_FILE_PATH) 14 test_utils.set_new_project_name(name) 15 test_utils.save_new_project_create() 16 17 # configure project 18 test_utils.configure_project() 19 test_utils.configure_x_res(640) 20 test_utils.configure_y_res(480) 21 test_utils.configure_display_name('display_1') 22 test_utils.configure_display_color_format(format) 23 test_utils.configure_source_path('output_files') 24 test_utils.configure_header_path('output_files') 25 test_utils.configure_resource_path('output_files') 26 test_utils.save_project_configure() 27 28 #create default folder for new project 29 test_utils.close_message_dialog() 30 31 test_utils.toolbar_save() 32 33def run_copy_paste_multi_tests(generate, screenshot): 34 test_utils.output_test_header(get_test_header()) 35 test_utils.setup(generate, screenshot, 'test_copy_paste_multi_golden_file') 36 37 #create a 16bpp project 38 test_project = 'test_copy_paste_multi' 39 print('create a 16bpp project: %s' %(test_project)) 40 run_new_project_create(test_project, 'GX_COLOR_FORMAT_565RGB') 41 42 #insert a window 43 test_utils.select_project_tree_node("window") 44 test_utils.edit_widget_props("ID_XPOS", 0) 45 test_utils.edit_widget_props("ID_YPOS", 0) 46 test_utils.edit_widget_props("ID_WIDTH", 640) 47 test_utils.edit_widget_props("ID_HEIGHT", 480) 48 49 #insert a prompt to window 50 test_utils.select_project_tree_node("window") 51 test_utils.add_widget("GX_TYPE_PROMPT") 52 53 #insert a button to window 54 test_utils.select_project_tree_node("window") 55 test_utils.add_widget("GX_TYPE_BUTTON") 56 test_utils.edit_widget_props("ID_XPOS", 10) 57 test_utils.edit_widget_props("ID_YPOS", 10) 58 test_utils.edit_widget_props("ID_WIDTH", 100) 59 test_utils.edit_widget_props("ID_HEIGHT", 50) 60 61 #select button and prompt 62 test_utils.select_multi_widgets("prompt") 63 64 #copy selected widgets 65 test_utils.toolbar_copy() 66 67 #paste selected widgets to window 68 test_utils.select_project_tree_node("window") 69 test_utils.toolbar_paste(0)#0:do not deselect after paste 70 71 #delete selected widgets(not allowed) 72 test_utils.delete_widget(0)#0:do not compare after delete 73 74 #move selected widget 75 test_utils.move_selected(50) 76 77 test_utils.undo() 78 test_utils.undo() 79 80 test_utils.toolbar_save() 81 82 test_utils.write_end('Copy/Paste Multi Tests') 83