1import os
2import sys
3import time
4import test_utils
5import test_constants
6import logging
7
8test_folder_edit_output_files = [
9"test_folder_edit_folder_3.c",
10"test_folder_edit_specifications.c",
11"test_folder_edit_specifications.h"]
12
13display_name = "display_1"
14
15def get_test_header():
16    notes =  "*         Studio Folder Edit Tests                    *\n"
17    notes += "*                                                     *\n"
18    notes += "* Test folder output                                  *\n"
19    return notes
20
21def run_folder_output_test():
22    #insert folder "folder_1", check on ouputfile without set output file name
23    test_utils.select_project_tree_node(display_name)
24    test_utils.insert_folder()
25    test_utils.edit_folder_properties()
26    test_utils.set_folder_name("folder_1")
27    test_utils.check_specify_output_file(1)
28    test_utils.save_folder_name_edit()
29
30    #insert widget to folder "folder_1"
31    test_utils.select_project_tree_node("folder_1")
32    test_utils.add_widget('GX_TYPE_WINDOW')
33
34    #inder folder "folder_2", check off outpfile
35    test_utils.select_project_tree_node(display_name)
36    test_utils.insert_folder()
37    test_utils.edit_folder_properties()
38    test_utils.set_folder_name("folder_2")
39    test_utils.check_specify_output_file(1)
40    test_utils.set_folder_output_file_name("test_folder_edit_folder_3")
41    test_utils.check_specify_output_file(0)
42    test_utils.save_folder_name_edit()
43
44    #insert widget to folder "folder_2"
45    test_utils.select_project_tree_node("folder_2")
46    test_utils.add_widget('GX_TYPE_WINDOW')
47
48    #inser folder "folder_3", check on output file, set output file name
49    test_utils.select_project_tree_node(display_name)
50    test_utils.insert_folder()
51    test_utils.edit_folder_properties()
52    test_utils.set_folder_name("folder_3")
53    test_utils.check_specify_output_file(1)
54    test_utils.set_folder_output_file_name("test_folder_edit_folder_3")
55    test_utils.save_folder_name_edit()
56
57    #insert widget to folder "folder_3"
58    test_utils.select_project_tree_node("folder_3")
59    test_utils.add_widget('GX_TYPE_WINDOW')
60
61    test_utils.toolbar_save()
62
63    test_utils.generate_all()
64    test_utils.click_generate_button()
65    test_utils.cmp_output_files(test_folder_edit_output_files)
66
67def run_folder_edit_tests(generate, screenshot):
68
69    test_utils.output_test_header(get_test_header())
70    test_utils.setup(generate, screenshot, 'test_folder_edit_golden_file')
71
72    # open test project
73    test_utils.new_project_create("test_folder_edit", display_name)
74
75    print("run folder output test")
76    run_folder_output_test()
77
78    test_utils.write_end("Test Folder Edit")
79
80
81