1# -*- coding: utf-8 -*- 2import os 3import sys 4import time 5import test_utils 6import test_constants 7 8display_name = "main_display" 9screen_name = "window" 10widget_name = "sprite" 11 12test_scroll_wheel_widget_output_files = [ 13"test_sprite_specifications.c", 14"test_sprite_specifications.h", 15"test_sprite_resources.c", 16"test_sprite_resources.h"] 17 18def get_test_header(): 19 notes = "* Sprite Test *\n" 20 notes += "* *\n" 21 notes += "* Edit Sprite Frames *\n" 22 notes += "* Import Frames From Pixelmap Folder *\n" 23 return notes 24 25def run_new_project_create(project_name): 26 27 # create a new project 28 test_utils.toolbar_create() 29 test_utils.set_new_project_path(test_utils.DEFAULT_OUTPUT_FILE_PATH) 30 test_utils.set_new_project_name(project_name) 31 test_utils.save_new_project_create() 32 33 # close message dialog when create new project 34 test_utils.close_message_dialog() 35 36 test_utils.toolbar_save() 37 38def add_pixelmaps(): 39 #---------------------------------------# 40 #add pixelmaps # 41 #---------------------------------------# 42 test_utils.add_pixelmaps('Custom', '..\\pixelmaps\\', 'frame_000.png') 43 test_utils.add_pixelmaps('Custom', '..\\pixelmaps\\', 'frame_001.png') 44 test_utils.add_pixelmaps('Custom', '..\\pixelmaps\\', 'fish.png') 45 test_utils.add_pixelmaps('Custom', '..\\pixelmaps\\', 'black_pause.png') 46 test_utils.add_pixelmaps('Custom', '..\\pixelmaps\\gif\\', 'sprite.gif') 47 48 test_utils.edit_pixelmap('FISH') 49 test_utils.set_image_id_name('SPRITE') 50 test_utils.save_pixelmap_edit(test_utils.CLOSE_NO_WAIT) 51 test_utils.close_error_dialog() 52 53 test_utils.set_image_id_name('SPRITE_F0') 54 test_utils.save_pixelmap_edit(test_utils.CLOSE_NO_WAIT) 55 test_utils.close_error_dialog() 56 57 test_utils.set_image_id_name('SPRITE_FISH') 58 test_utils.save_pixelmap_edit() 59 60 61def add_edit_sprite(): 62 #---------------------------------------# 63 #add and edti sprite # 64 #---------------------------------------# 65 test_utils.select_project_tree_node(screen_name) 66 test_utils.add_widget('GX_TYPE_SPRITE') 67 68 test_utils.edit_widget_props("ID_WIDGET_NAME", widget_name) 69 test_utils.compare_result() 70 71 # open sprite edit dialog 72 test_utils.select_project_tree_node(widget_name) 73 test_utils.edit_widget_props_post('ID_SPRITE_EDIT_FRAMES', 1) 74 test_utils.wait_dialog_open(test_utils.SPRITE_FRAME_EDIT_DIALOG) 75 76 test_utils.edit_sprite_total_frames(3) 77 test_utils.edit_sprite_frame(1, 'FRAME_001') 78 test_utils.edit_sprite_frame_alpha(255) 79 test_utils.edit_sprite_frame(2, 'SPRITE_FISH') 80 test_utils.edit_sprite_frame(3, 'FRAME_000') 81 82 test_utils.save_sprite_frame_edit() 83 test_utils.compare_result() 84 85 # add second sprite widget 86 test_utils.select_project_tree_node(screen_name) 87 test_utils.add_widget('GX_TYPE_SPRITE') 88 test_utils.edit_widget_props("ID_WIDGET_NAME", 'sprite_1') 89 test_utils.edit_widget_props("ID_XPOS", 25) 90 test_utils.edit_widget_props("ID_YPOS", 154) 91 test_utils.edit_widget_props("ID_PIXELMAP_0", 'SPRITE') 92 test_utils.toolbar_size_to_fit() 93 test_utils.compare_result() 94 95 test_utils.edit_pixelmap('SPRITE') 96 test_utils.set_image_path('..\\..\\pixelmaps\\gif\\sprite_4_frames.gif') 97 test_utils.save_pixelmap_edit() 98 test_utils.compare_result() 99 100 test_utils.delete_pixelmap('BLACK_PAUSE') 101 102def test_import_frames(): 103 test_utils.select_project_tree_node(screen_name) 104 test_utils.add_widget('GX_TYPE_SPRITE') 105 test_utils.edit_widget_props("ID_XPOS", 0) 106 test_utils.edit_widget_props("ID_YPOS", 0) 107 108 test_utils.edit_widget_props_post('ID_SPRITE_EDIT_FRAMES', 1) 109 test_utils.wait_dialog_open(test_utils.SPRITE_FRAME_EDIT_DIALOG) 110 111 test_utils.import_sprite_frames() 112 test_utils.save_sprite_frame_import_edit() 113 114 test_utils.check_apply_to_all_frames(1) 115 test_utils.edit_sprite_frame_alpha(200) 116 test_utils.edit_sprite_frame_xoffset(5) 117 test_utils.edit_sprite_frame_yoffset(8) 118 test_utils.edit_sprite_frame_delay(10) 119 120 test_utils.save_sprite_frame_edit() 121 test_utils.compare_result() 122 123def run_sprite_tests(generate, screenshot): 124 125 test_utils.output_test_header(get_test_header()) 126 test_utils.setup(generate, screenshot, 'test_sprite_golden_file') 127 128 print('create new project') 129 run_new_project_create("test_sprite") 130 131 print('add pixelmaps') 132 add_pixelmaps() 133 134 print('add and edit sprite') 135 add_edit_sprite() 136 137 print('test import frames') 138 test_import_frames() 139 140 test_utils.toolbar_save() 141 test_utils.generate_all() 142 test_utils.click_generate_button() 143 test_utils.cmp_output_files(test_scroll_wheel_widget_output_files) 144 145 test_utils.write_end('Sprite Tests')