1import os
2import sys
3import time
4import test_utils
5import test_constants
6import logging
7
8bidi_text_draw_32bpp_output_files = [
9"bidi_text_draw_32bpp_resources.c",
10"bidi_text_draw_32bpp_resources.h",
11"bidi_text_draw_32bpp_specifications.c",
12"bidi_text_draw_32bpp_specifications.h"
13]
14
15def get_test_header():
16
17    notes =  "*            Studio Bidi Text Tests                   *\n"
18    notes += "*                                                     *\n"
19    notes += "* Test bidi text configure                            *\n"
20    notes += "* Test generate reordered bidi text                   *\n"
21    return notes
22
23def run_bidi_text_config():
24    # open test project
25    test_utils.open_project('bidi_text_draw_32bpp.gxp')
26
27    test_utils.configure_languages()
28
29    test_utils.check_reorder_bidi_text(1)#Support bidi text is disabled, should not work
30    test_utils.select_language_index(2)
31
32    test_utils.check_support_bidi_text(0)
33    test_utils.check_reorder_bidi_text(0)#Support bidi text is disabled, should not work
34
35    test_utils.select_language_index(1)
36    test_utils.check_support_bidi_text(1)
37    test_utils.check_reorder_bidi_text(0)
38
39    #save modifications
40    test_utils.save_language_configure()
41
42    test_utils.compare_result()
43
44    test_utils.configure_languages()
45    test_utils.select_language_index(1)
46    test_utils.check_reorder_bidi_text(1)
47
48    #save modifications
49    test_utils.save_language_configure()
50
51    # test output files
52    test_utils.generate_all()
53    test_utils.click_generate_button()
54    test_utils.cmp_output_files(bidi_text_draw_32bpp_output_files)
55
56def run_reordered_bidi_text_generation():
57    test_utils.open_project('bidi_text_line_break_static.gxp')
58    test_utils.generate_all()
59    test_utils.click_generate_button()
60
61    test_utils.select_project_tree_node("ml_view_Hebrew")
62    test_utils.edit_widget_props("ID_STRING_ID", "ENGLISH")
63    test_utils.generate_all()
64    test_utils.click_generate_button()
65
66def run_bidi_text_tests(generate, screenshot):
67
68    test_utils.output_test_header(get_test_header())
69    test_utils.setup(generate, screenshot, 'test_bidi_text_golden_file')
70
71    print("Run bidi text configuration")
72    run_bidi_text_config()
73
74    print("Run reordered bidi text generation")
75    run_reordered_bidi_text_generation()
76
77    test_utils.write_end("Test Bidi Text")
78
79