summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVratislav Podzimek <vpodzime@redhat.com>2012-10-12 13:37:00 +0200
committerSergey V. Udaltsov <svu@gnome.org>2012-10-13 12:45:32 +0100
commitf48cdb13142f28f591198e261437ecb1ec7ce36b (patch)
treec3a01e4d63efcc4a62e5ddfb7abf745e13856774
parent4d5b097244b5b6883f3405d804510a26027d984b (diff)
Add test for getting curent active layout
Signed-off-by: Vratislav Podzimek <vpodzime@redhat.com>
-rwxr-xr-xtests/test_gi.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/test_gi.py b/tests/test_gi.py
index 66be519..c71412d 100755
--- a/tests/test_gi.py
+++ b/tests/test_gi.py
@@ -122,3 +122,43 @@ print(' Layouts:', rec.layouts)
print(' Variants:', rec.variants)
print(' Options:', rec.options)
+print
+original_options = rec.options[:]
+if not any("toggle" in opt for opt in rec.options):
+ print('Adding Alt+Shift as an option for switching layouts...')
+ rec.set_options(rec.options + ["grp:alt_shift_toggle"])
+ if not rec.activate(engine):
+ print('Failed to activate new configuration')
+
+original_layouts = rec.layouts[:]
+original_variants = rec.variants[:]
+if len(rec.layouts) == 1:
+ print('Adding Danish layout...')
+ rec.set_layouts(rec.layouts + ['dk'])
+ rec.set_variants(rec.variants + [''])
+ if not rec.activate(engine):
+ print('Failed to activate new configuration')
+
+engine.start_listen(Xkl.EngineListenModes.TRACK_KEYBOARD_STATE)
+groups_names = engine.get_groups_names()
+state = engine.get_current_state()
+engine.start_listen(Xkl.EngineListenModes.TRACK_KEYBOARD_STATE)
+curent_layout = groups_names[state.group]
+
+print('Curent active layout: %s' % curent_layout)
+raw_input('Please change your layout and hit ENTER')
+
+engine.start_listen(Xkl.EngineListenModes.TRACK_KEYBOARD_STATE)
+groups_names = engine.get_groups_names()
+state = engine.get_current_state()
+engine.start_listen(Xkl.EngineListenModes.TRACK_KEYBOARD_STATE)
+curent_layout = groups_names[state.group]
+
+print('Curent active layout: %s' % curent_layout)
+
+print('Restoring original configuration...')
+rec.set_layouts(original_layouts)
+rec.set_variants(original_variants)
+rec.set_options(original_options)
+if not rec.activate(engine):
+ print('Failed to activate new configuration')