summaryrefslogtreecommitdiff
path: root/testsuite.py
diff options
context:
space:
mode:
authorUlf Magnusson <ulfalizer@gmail.com>2012-12-14 11:13:18 +0100
committerUlf Magnusson <ulfalizer@gmail.com>2012-12-14 11:13:18 +0100
commit91d9c7cb3f27bcb9ddf0111ec0589b14c79f101d (patch)
tree6d9961d025dde59c99b8429d27d18f717a3c2b55 /testsuite.py
parent37cbe272c14bba43d8368447129da0cb541427e1 (diff)
Add selftests for 'visible if' visibility.
Diffstat (limited to 'testsuite.py')
-rw-r--r--testsuite.py39
1 files changed, 38 insertions, 1 deletions
diff --git a/testsuite.py b/testsuite.py
index 69d08c4..dd69ffe 100644
--- a/testsuite.py
+++ b/testsuite.py
@@ -523,7 +523,7 @@ def run_selftests():
format(menu.get_title(), module_vis, menu_vis))
menu_n, menu_m, menu_y, menu_if_n, menu_if_m, menu_if_y, \
- menu_if_m_and_y = c.get_menus()[4:-1]
+ menu_if_m_and_y = c.get_menus()[4:-5]
verify(menu_n.get_title() == "menu n", "Ops - testing the wrong menus")
verify_menu_visibility(menu_n, "n", "n")
@@ -534,6 +534,43 @@ def run_selftests():
verify_menu_visibility(menu_if_y, "y", "y")
verify_menu_visibility(menu_if_m_and_y, "n", "m")
+ # Menu 'visible if' visibility
+
+ menu_visible_if_n, menu_visible_if_m, menu_visible_if_y, \
+ menu_visible_if_m_2 = c.get_menus()[12:]
+
+ def verify_visible_if_visibility(menu, no_module_vis, module_vis):
+ c["MODULES"].set_user_value("n")
+ menu_vis = menu.get_visible_if_visibility()
+ verify(menu_vis == no_module_vis,
+ "menu \"{0}\" should have 'visible if' visibility '{1}' "
+ "without modules, has 'visible if' visibility '{2}'".
+ format(menu.get_title(), no_module_vis, menu_vis))
+
+ c["MODULES"].set_user_value("y")
+ menu_vis = menu.get_visible_if_visibility()
+ verify(menu_vis == module_vis,
+ "menu \"{0}\" should have 'visible if' visibility '{1}' "
+ "with modules, has 'visible if' visibility '{2}'".
+ format(menu.get_title(), module_vis, menu_vis))
+
+ # Ordinary visibility should not affect 'visible if' visibility
+ verify_visible_if_visibility(menu_n, "y", "y")
+ verify_visible_if_visibility(menu_if_n, "y", "y")
+ verify_visible_if_visibility(menu_m, "y", "y")
+ verify_visible_if_visibility(menu_if_m, "y", "y")
+
+ verify_visible_if_visibility(menu_visible_if_n, "n", "n")
+ verify_visible_if_visibility(menu_visible_if_m, "n", "m")
+ verify_visible_if_visibility(menu_visible_if_y, "y", "y")
+ verify_visible_if_visibility(menu_visible_if_m_2, "n", "m")
+
+ # Verify that 'visible if' visibility gets propagated to contained symbols
+ verify_sym_visibility("VISIBLE_IF_n", "n", "n")
+ verify_sym_visibility("VISIBLE_IF_m", "n", "m")
+ verify_sym_visibility("VISIBLE_IF_y", "y", "y")
+ verify_sym_visibility("VISIBLE_IF_m_2", "n", "m")
+
# Comment visibility
def verify_comment_visibility(comment, no_module_vis, module_vis):