mirror of
				https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git
				synced 2025-10-30 23:05:58 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			69 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Perl
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Perl
		
	
	
	
	
	
| use base "installedtest";
 | |
| use strict;
 | |
| use testapi;
 | |
| use utils;
 | |
| 
 | |
| sub run {
 | |
|     my $relnum = get_release_number;
 | |
|     if (get_var("LANGUAGE") eq 'japanese') {
 | |
|         # give GNOME a minute to settle
 | |
|         wait_still_screen 5;
 | |
|         # since g-i-s new user mode was dropped and the replacement
 | |
|         # doesn't do input method selection, and anaconda never has,
 | |
|         # we have to set up the input method manually:
 | |
|         # https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3749
 | |
|         # 'hotkey' seems to be the only thing we can type for which
 | |
|         # the 'keyboard' pane is the top result; searching for
 | |
|         # 'keyboard' or 'input' gives us results for uninstalled apps
 | |
|         # from Software
 | |
|         menu_launch_type "hotkey";
 | |
|         unless (check_screen "desktop_add_input_source", 30) {
 | |
|             # first attempt to run this often fails for some reason
 | |
|             check_desktop;
 | |
|             menu_launch_type "hotkey";
 | |
|         }
 | |
|         assert_and_click "desktop_add_input_source";
 | |
|         assert_and_click "desktop_input_source_japanese";
 | |
|         assert_and_click "desktop_input_source_japanese_anthy";
 | |
|         send_key "ret";
 | |
|         wait_still_screen 3;
 | |
|         send_key "alt-f4";
 | |
|     }
 | |
|     # do this from the overview because the desktop uses the stupid
 | |
|     # transparent top bar which messes with our needles
 | |
|     send_key "super";
 | |
|     assert_screen "overview_app_grid";
 | |
|     # check both layouts are available at the desktop; here,
 | |
|     # we can expect input method switching to work too
 | |
|     desktop_switch_layout 'ascii';
 | |
|     desktop_switch_layout 'native';
 | |
|     # special testing for Japanese to ensure input method actually
 | |
|     # works. If we ever test other input-method based languages we can
 | |
|     # generalize this out, for now we just inline Japanese
 | |
|     if (get_var("LANGUAGE") eq 'japanese') {
 | |
|         # wait a bit for input switch to complete
 | |
|         sleep 3;
 | |
| 
 | |
|         # assume we can test input from whatever 'super' opened
 | |
|         type_safely "yama";
 | |
|         assert_screen "desktop_yama_hiragana";
 | |
|         send_key "spc";
 | |
|         assert_screen "desktop_yama_kanji";
 | |
|         send_key "spc";
 | |
|         assert_screen "desktop_yama_chooser";
 | |
|         send_key "esc";
 | |
|         send_key "esc";
 | |
|         send_key "esc";
 | |
|         send_key "esc";
 | |
|         check_desktop;
 | |
|     }
 | |
| }
 | |
| 
 | |
| sub test_flags {
 | |
|     return {fatal => 1, always_rollback => 1};
 | |
| }
 | |
| 
 | |
| 1;
 | |
| 
 | |
| # vim: set sw=4 et:
 |