diff --git a/lib/main_common.pm b/lib/main_common.pm index e9ff8220..75cfc457 100644 --- a/lib/main_common.pm +++ b/lib/main_common.pm @@ -75,12 +75,17 @@ sub console_switch_layout { } } -# switch to 'native' or 'us' keyboard layout in a graphical desktop +# switch to 'native' or 'ascii' input method in a graphical desktop +# usually switched configs have one mode for inputting ascii-ish +# characters (which may be 'us' keyboard layout, or a local layout for +# inputting ascii like 'jp') and one mode for inputting native +# characters (which may be another keyboard layout, like 'ru', or an +# input method for more complex languages) # 'environment' can be a desktop name or 'anaconda' for anaconda # if not set, will use get_var('DESKTOP') or default 'anaconda' sub desktop_switch_layout { my ($layout, $environment) = @_; - $layout //= 'us'; + $layout //= 'ascii'; $environment //= get_var("DESKTOP", "anaconda"); # if already selected, we're good return if (check_screen "${environment}_layout_${layout}", 3); diff --git a/main.pm b/main.pm index 1e36d550..0a4a1b57 100644 --- a/main.pm +++ b/main.pm @@ -183,7 +183,11 @@ sub load_postinstall_tests() { if (get_var("DESKTOP")) { autotest::loadtest "tests/_graphical_wait_login.pm"; } - else { + # Test non-US input at this point, on language tests + if (get_var("SWITCHED_LAYOUT") || get_var("INPUT_METHOD")) { + autotest::loadtest "tests/_graphical_input.pm"; + } + unless (get_var("DESKTOP")) { autotest::loadtest "tests/_console_wait_login.pm"; } diff --git a/needles/anaconda/install_destination/japanese/encrypt_data_japanese-20161217.json b/needles/anaconda/install_destination/japanese/encrypt_data_japanese-20161217.json new file mode 100644 index 00000000..7b9ee1fd --- /dev/null +++ b/needles/anaconda/install_destination/japanese/encrypt_data_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 22, + "ypos": 584, + "width": 136, + "height": 17, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_install_destination_encrypt_data" + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_destination/japanese/encrypt_data_japanese-20161217.png b/needles/anaconda/install_destination/japanese/encrypt_data_japanese-20161217.png new file mode 100644 index 00000000..668c567e Binary files /dev/null and b/needles/anaconda/install_destination/japanese/encrypt_data_japanese-20161217.png differ diff --git a/needles/anaconda/install_destination/japanese/save_passphrase_japanese-20161217.json b/needles/anaconda/install_destination/japanese/save_passphrase_japanese-20161217.json new file mode 100644 index 00000000..352ff676 --- /dev/null +++ b/needles/anaconda/install_destination/japanese/save_passphrase_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_install_destination_save_passphrase" + ], + "area": [ + { + "xpos": 647, + "ypos": 521, + "width": 118, + "height": 13, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_destination/japanese/save_passphrase_japanese-20161217.png b/needles/anaconda/install_destination/japanese/save_passphrase_japanese-20161217.png new file mode 100644 index 00000000..26902df7 Binary files /dev/null and b/needles/anaconda/install_destination/japanese/save_passphrase_japanese-20161217.png differ diff --git a/needles/anaconda/install_process/japanese/install_done_japanese-reboot-20161216.json b/needles/anaconda/install_process/japanese/install_done_japanese-reboot-20161216.json new file mode 100644 index 00000000..f7ff782e --- /dev/null +++ b/needles/anaconda/install_process/japanese/install_done_japanese-reboot-20161216.json @@ -0,0 +1,24 @@ +{ + "area": [ + { + "height": 14, + "type": "match", + "width": 337, + "xpos": 674, + "ypos": 636 + }, + { + "height": 14, + "type": "match", + "width": 41, + "xpos": 942, + "ypos": 684 + } + ], + "properties": [], + "tags": [ + "anaconda_install_done", + "ENV-DISTRI-fedora", + "LANGUAGE-japanese" + ] +} diff --git a/needles/anaconda/install_process/japanese/install_done_japanese-reboot-20161216.png b/needles/anaconda/install_process/japanese/install_done_japanese-reboot-20161216.png new file mode 100644 index 00000000..d5dd1f1d Binary files /dev/null and b/needles/anaconda/install_process/japanese/install_done_japanese-reboot-20161216.png differ diff --git a/needles/anaconda/install_process/japanese/root_password_screen_japanese-20161217.json b/needles/anaconda/install_process/japanese/root_password_screen_japanese-20161217.json new file mode 100644 index 00000000..aefabb32 --- /dev/null +++ b/needles/anaconda/install_process/japanese/root_password_screen_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 212, + "ypos": 125, + "width": 96, + "height": 13, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_install_root_password_screen" + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_process/japanese/root_password_screen_japanese-20161217.png b/needles/anaconda/install_process/japanese/root_password_screen_japanese-20161217.png new file mode 100644 index 00000000..a40b7eee Binary files /dev/null and b/needles/anaconda/install_process/japanese/root_password_screen_japanese-20161217.png differ diff --git a/needles/anaconda/install_process/japanese/user_creation_make_admin_japanese-20161217.json b/needles/anaconda/install_process/japanese/user_creation_make_admin_japanese-20161217.json new file mode 100644 index 00000000..7463c0f7 --- /dev/null +++ b/needles/anaconda/install_process/japanese/user_creation_make_admin_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 382, + "ypos": 214, + "width": 188, + "height": 17, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_install_user_creation_make_admin" + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_process/japanese/user_creation_make_admin_japanese-20161217.png b/needles/anaconda/install_process/japanese/user_creation_make_admin_japanese-20161217.png new file mode 100644 index 00000000..a4cc37a5 Binary files /dev/null and b/needles/anaconda/install_process/japanese/user_creation_make_admin_japanese-20161217.png differ diff --git a/needles/anaconda/install_process/japanese/user_creation_screen_japanese-20161217.json b/needles/anaconda/install_process/japanese/user_creation_screen_japanese-20161217.json new file mode 100644 index 00000000..43cb0c63 --- /dev/null +++ b/needles/anaconda/install_process/japanese/user_creation_screen_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 267, + "ypos": 155, + "width": 71, + "height": 14, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_install_user_creation_screen" + ] +} \ No newline at end of file diff --git a/needles/anaconda/install_process/japanese/user_creation_screen_japanese-20161217.png b/needles/anaconda/install_process/japanese/user_creation_screen_japanese-20161217.png new file mode 100644 index 00000000..7f384746 Binary files /dev/null and b/needles/anaconda/install_process/japanese/user_creation_screen_japanese-20161217.png differ diff --git a/needles/anaconda/install_process/layout_us.json b/needles/anaconda/install_process/layout_us.json index 0eb1dca2..936f8434 100644 --- a/needles/anaconda/install_process/layout_us.json +++ b/needles/anaconda/install_process/layout_us.json @@ -9,6 +9,7 @@ } ], "tags": [ - "anaconda_layout_us" + "anaconda_layout_us", + "anaconda_layout_ascii" ] } diff --git a/needles/anaconda/install_process/user_created_qwerty-20160825.json b/needles/anaconda/install_process/user_created_qwerty-20160825.json index 9b74ab86..0ab756a9 100644 --- a/needles/anaconda/install_process/user_created_qwerty-20160825.json +++ b/needles/anaconda/install_process/user_created_qwerty-20160825.json @@ -11,6 +11,7 @@ "properties": [], "tags": [ "LANGUAGE-russian", + "LANGUAGE-japanese", "anaconda_install_user_created" ] -} \ No newline at end of file +} diff --git a/needles/anaconda/lang_select/japanese/install_lang_continue_japanese-20161217.json b/needles/anaconda/lang_select/japanese/install_lang_continue_japanese-20161217.json new file mode 100644 index 00000000..9da8942b --- /dev/null +++ b/needles/anaconda/lang_select/japanese/install_lang_continue_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 950, + "ypos": 736, + "width": 27, + "height": 15, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_select_install_lang_continue" + ] +} \ No newline at end of file diff --git a/needles/anaconda/lang_select/japanese/install_lang_continue_japanese-20161217.png b/needles/anaconda/lang_select/japanese/install_lang_continue_japanese-20161217.png new file mode 100644 index 00000000..e24e76cf Binary files /dev/null and b/needles/anaconda/lang_select/japanese/install_lang_continue_japanese-20161217.png differ diff --git a/needles/anaconda/lang_select/japanese/install_lang_japanese_filtered-20161217.json b/needles/anaconda/lang_select/japanese/install_lang_japanese_filtered-20161217.json new file mode 100644 index 00000000..3b7c6fdf --- /dev/null +++ b/needles/anaconda/lang_select/japanese/install_lang_japanese_filtered-20161217.json @@ -0,0 +1,23 @@ +{ + "area": [ + { + "xpos": 223, + "ypos": 187, + "width": 50, + "height": 32, + "type": "match" + }, + { + "xpos": 475, + "ypos": 187, + "width": 75, + "height": 36, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_select_install_lang_filtered" + ] +} \ No newline at end of file diff --git a/needles/anaconda/lang_select/japanese/install_lang_japanese_filtered-20161217.png b/needles/anaconda/lang_select/japanese/install_lang_japanese_filtered-20161217.png new file mode 100644 index 00000000..fa11c9ac Binary files /dev/null and b/needles/anaconda/lang_select/japanese/install_lang_japanese_filtered-20161217.png differ diff --git a/needles/anaconda/lang_select/japanese/install_lang_japanese_selected-20161217.json b/needles/anaconda/lang_select/japanese/install_lang_japanese_selected-20161217.json new file mode 100644 index 00000000..054648fc --- /dev/null +++ b/needles/anaconda/lang_select/japanese/install_lang_japanese_selected-20161217.json @@ -0,0 +1,16 @@ +{ + "tags": [ + "LANGUAGE-japanese", + "anaconda_select_install_lang_selected" + ], + "properties": [], + "area": [ + { + "xpos": 608, + "ypos": 201, + "width": 93, + "height": 16, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/anaconda/lang_select/japanese/install_lang_japanese_selected-20161217.png b/needles/anaconda/lang_select/japanese/install_lang_japanese_selected-20161217.png new file mode 100644 index 00000000..20bc1d12 Binary files /dev/null and b/needles/anaconda/lang_select/japanese/install_lang_japanese_selected-20161217.png differ diff --git a/needles/anaconda/main_hub/japanese/begin_installation_japanese-20161217.json b/needles/anaconda/main_hub/japanese/begin_installation_japanese-20161217.json new file mode 100644 index 00000000..7cef525e --- /dev/null +++ b/needles/anaconda/main_hub/japanese/begin_installation_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "tags": [ + "LANGUAGE-japanese", + "anaconda_main_hub_begin_installation" + ], + "properties": [], + "area": [ + { + "xpos": 864, + "ypos": 709, + "width": 116, + "height": 12, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/anaconda/main_hub/japanese/begin_installation_japanese-20161217.png b/needles/anaconda/main_hub/japanese/begin_installation_japanese-20161217.png new file mode 100644 index 00000000..258ac186 Binary files /dev/null and b/needles/anaconda/main_hub/japanese/begin_installation_japanese-20161217.png differ diff --git a/needles/anaconda/universal/japanese/rawhide_accept_fate_japanese-20161217.json b/needles/anaconda/universal/japanese/rawhide_accept_fate_japanese-20161217.json new file mode 100644 index 00000000..d785d7e6 --- /dev/null +++ b/needles/anaconda/universal/japanese/rawhide_accept_fate_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "anaconda_rawhide_accept_fate" + ], + "area": [ + { + "xpos": 613, + "ypos": 469, + "width": 118, + "height": 14, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/anaconda/universal/japanese/rawhide_accept_fate_japanese-20161217.png b/needles/anaconda/universal/japanese/rawhide_accept_fate_japanese-20161217.png new file mode 100644 index 00000000..4fc8a4f5 Binary files /dev/null and b/needles/anaconda/universal/japanese/rawhide_accept_fate_japanese-20161217.png differ diff --git a/needles/anaconda/universal/japanese/spoke_done_japanese-20161217.json b/needles/anaconda/universal/japanese/spoke_done_japanese-20161217.json new file mode 100644 index 00000000..920f3231 --- /dev/null +++ b/needles/anaconda/universal/japanese/spoke_done_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "tags": [ + "LANGUAGE-japanese", + "anaconda_spoke_done" + ], + "properties": [], + "area": [ + { + "xpos": 34, + "ypos": 55, + "width": 27, + "height": 13, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/anaconda/universal/japanese/spoke_done_japanese-20161217.png b/needles/anaconda/universal/japanese/spoke_done_japanese-20161217.png new file mode 100644 index 00000000..0b99a131 Binary files /dev/null and b/needles/anaconda/universal/japanese/spoke_done_japanese-20161217.png differ diff --git a/needles/gnome/japanese/desktop_clean_japanese-20161217.json b/needles/gnome/japanese/desktop_clean_japanese-20161217.json new file mode 100644 index 00000000..67d8ac73 --- /dev/null +++ b/needles/gnome/japanese/desktop_clean_japanese-20161217.json @@ -0,0 +1,24 @@ +{ + "tags": [ + "DESKTOP-gnome", + "LANGUAGE-japanese", + "graphical_desktop_clean" + ], + "properties": [], + "area": [ + { + "height": 15, + "xpos": 14, + "type": "match", + "ypos": 6, + "width": 107 + }, + { + "xpos": 968, + "type": "match", + "ypos": 4, + "width": 43, + "height": 18 + } + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/desktop_clean_japanese-20161217.png b/needles/gnome/japanese/desktop_clean_japanese-20161217.png new file mode 100644 index 00000000..f5afecd2 Binary files /dev/null and b/needles/gnome/japanese/desktop_clean_japanese-20161217.png differ diff --git a/needles/gnome/japanese/getting_started_japanese-20161217.json b/needles/gnome/japanese/getting_started_japanese-20161217.json new file mode 100644 index 00000000..4df701cd --- /dev/null +++ b/needles/gnome/japanese/getting_started_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 455, + "ypos": 34, + "width": 112, + "height": 15, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "getting_started" + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/getting_started_japanese-20161217.png b/needles/gnome/japanese/getting_started_japanese-20161217.png new file mode 100644 index 00000000..7100cd01 Binary files /dev/null and b/needles/gnome/japanese/getting_started_japanese-20161217.png differ diff --git a/needles/gnome/japanese/initial_setup_kana_kanji.json b/needles/gnome/japanese/initial_setup_kana_kanji.json new file mode 100644 index 00000000..eb58bf93 --- /dev/null +++ b/needles/gnome/japanese/initial_setup_kana_kanji.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "height": 15, + "type": "match", + "width": 121, + "xpos": 266, + "ypos": 315 + } + ], + "tags": [ + "initial_setup_kana_kanji", + "LANGUAGE-japanese" + ] +} diff --git a/needles/gnome/japanese/initial_setup_kana_kanji.png b/needles/gnome/japanese/initial_setup_kana_kanji.png new file mode 100644 index 00000000..77745f23 Binary files /dev/null and b/needles/gnome/japanese/initial_setup_kana_kanji.png differ diff --git a/needles/gnome/japanese/initial_setup_kana_kanji_selected.json b/needles/gnome/japanese/initial_setup_kana_kanji_selected.json new file mode 100644 index 00000000..986ac6a5 --- /dev/null +++ b/needles/gnome/japanese/initial_setup_kana_kanji_selected.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "height": 15, + "type": "match", + "width": 396, + "xpos": 266, + "ypos": 315 + } + ], + "tags": [ + "initial_setup_kana_kanji_selected", + "LANGUAGE-japanese" + ] +} diff --git a/needles/gnome/japanese/initial_setup_kana_kanji_selected.png b/needles/gnome/japanese/initial_setup_kana_kanji_selected.png new file mode 100644 index 00000000..77745f23 Binary files /dev/null and b/needles/gnome/japanese/initial_setup_kana_kanji_selected.png differ diff --git a/needles/gnome/japanese/layout_ascii_japanese-20161216.json b/needles/gnome/japanese/layout_ascii_japanese-20161216.json new file mode 100644 index 00000000..d3b6255d --- /dev/null +++ b/needles/gnome/japanese/layout_ascii_japanese-20161216.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "height": 13, + "type": "match", + "width": 33, + "xpos": 853, + "ypos": 7 + } + ], + "tags": [ + "gnome_layout_ascii", + "LANGUAGE-japanese" + ] +} diff --git a/needles/gnome/japanese/layout_ascii_japanese-20161216.png b/needles/gnome/japanese/layout_ascii_japanese-20161216.png new file mode 100644 index 00000000..4961451f Binary files /dev/null and b/needles/gnome/japanese/layout_ascii_japanese-20161216.png differ diff --git a/needles/gnome/japanese/layout_native_japanese-20161216.json b/needles/gnome/japanese/layout_native_japanese-20161216.json new file mode 100644 index 00000000..80ba4bda --- /dev/null +++ b/needles/gnome/japanese/layout_native_japanese-20161216.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "height": 15, + "type": "match", + "width": 33, + "xpos": 853, + "ypos": 5 + } + ], + "tags": [ + "gnome_layout_native", + "LANGUAGE-japanese" + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/layout_native_japanese-20161216.png b/needles/gnome/japanese/layout_native_japanese-20161216.png new file mode 100644 index 00000000..b4fac6f4 Binary files /dev/null and b/needles/gnome/japanese/layout_native_japanese-20161216.png differ diff --git a/needles/gnome/japanese/login_gdm_input_japanese-20161217.json b/needles/gnome/japanese/login_gdm_input_japanese-20161217.json new file mode 100644 index 00000000..341a3a46 --- /dev/null +++ b/needles/gnome/japanese/login_gdm_input_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 342, + "ypos": 377, + "width": 338, + "height": 55, + "type": "match" + } + ], + "tags": [ + "LANGUAGE-japanese", + "graphical_login_input" + ], + "properties": [] +} \ No newline at end of file diff --git a/needles/gnome/japanese/login_gdm_input_japanese-20161217.png b/needles/gnome/japanese/login_gdm_input_japanese-20161217.png new file mode 100644 index 00000000..9b44566d Binary files /dev/null and b/needles/gnome/japanese/login_gdm_input_japanese-20161217.png differ diff --git a/needles/gnome/japanese/next_button_japanese-20161217.json b/needles/gnome/japanese/next_button_japanese-20161217.json new file mode 100644 index 00000000..c9543b58 --- /dev/null +++ b/needles/gnome/japanese/next_button_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "next_button" + ], + "area": [ + { + "xpos": 945, + "ypos": 43, + "width": 33, + "height": 14, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/next_button_japanese-20161217.png b/needles/gnome/japanese/next_button_japanese-20161217.png new file mode 100644 index 00000000..7cea3220 Binary files /dev/null and b/needles/gnome/japanese/next_button_japanese-20161217.png differ diff --git a/needles/gnome/japanese/skip_button_japanese-20161217.json b/needles/gnome/japanese/skip_button_japanese-20161217.json new file mode 100644 index 00000000..0bc7f4bb --- /dev/null +++ b/needles/gnome/japanese/skip_button_japanese-20161217.json @@ -0,0 +1,16 @@ +{ + "area": [ + { + "xpos": 921, + "ypos": 42, + "width": 60, + "height": 15, + "type": "match" + } + ], + "properties": [], + "tags": [ + "LANGUAGE-japanese", + "skip_button" + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/skip_button_japanese-20161217.png b/needles/gnome/japanese/skip_button_japanese-20161217.png new file mode 100644 index 00000000..913505d8 Binary files /dev/null and b/needles/gnome/japanese/skip_button_japanese-20161217.png differ diff --git a/needles/gnome/japanese/yama_chooser-20161217.json b/needles/gnome/japanese/yama_chooser-20161217.json new file mode 100644 index 00000000..4ce98416 --- /dev/null +++ b/needles/gnome/japanese/yama_chooser-20161217.json @@ -0,0 +1,31 @@ +{ + "area": [ + { + "xpos": 380, + "ypos": 208, + "width": 10, + "height": 71, + "type": "match" + }, + { + "xpos": 387, + "ypos": 380, + "width": 12, + "height": 12, + "type": "match" + }, + { + "xpos": 422, + "ypos": 380, + "width": 14, + "height": 12, + "type": "match" + } + ], + "properties": [], + "tags": [ + "DESKTOP-gnome", + "LANGUAGE-japanese", + "desktop_yama_chooser" + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/yama_chooser-20161217.png b/needles/gnome/japanese/yama_chooser-20161217.png new file mode 100644 index 00000000..d727f1cf Binary files /dev/null and b/needles/gnome/japanese/yama_chooser-20161217.png differ diff --git a/needles/gnome/japanese/yama_hiragana-20161217.json b/needles/gnome/japanese/yama_hiragana-20161217.json new file mode 100644 index 00000000..9ab50872 --- /dev/null +++ b/needles/gnome/japanese/yama_hiragana-20161217.json @@ -0,0 +1,17 @@ +{ + "tags": [ + "DESKTOP-gnome", + "LANGUAGE-japanese", + "desktop_yama_hiragana" + ], + "properties": [], + "area": [ + { + "xpos": 384, + "ypos": 61, + "width": 29, + "height": 14, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/yama_hiragana-20161217.png b/needles/gnome/japanese/yama_hiragana-20161217.png new file mode 100644 index 00000000..85210ceb Binary files /dev/null and b/needles/gnome/japanese/yama_hiragana-20161217.png differ diff --git a/needles/gnome/japanese/yama_kanji-20161217.json b/needles/gnome/japanese/yama_kanji-20161217.json new file mode 100644 index 00000000..856f0046 --- /dev/null +++ b/needles/gnome/japanese/yama_kanji-20161217.json @@ -0,0 +1,17 @@ +{ + "properties": [], + "tags": [ + "DESKTOP-gnome", + "LANGUAGE-japanese", + "desktop_yama_kanji" + ], + "area": [ + { + "xpos": 385, + "ypos": 61, + "width": 13, + "height": 16, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/japanese/yama_kanji-20161217.png b/needles/gnome/japanese/yama_kanji-20161217.png new file mode 100644 index 00000000..01cd176a Binary files /dev/null and b/needles/gnome/japanese/yama_kanji-20161217.png differ diff --git a/needles/gnome/layout_us-20161215.json b/needles/gnome/layout_us-20161215.json index afda8b51..a243c873 100644 --- a/needles/gnome/layout_us-20161215.json +++ b/needles/gnome/layout_us-20161215.json @@ -10,6 +10,7 @@ ], "properties": [], "tags": [ - "gnome_layout_us" + "gnome_layout_us", + "gnome_layout_ascii" ] -} \ No newline at end of file +} diff --git a/needles/gnome/layout_us-gdm-20161215.json b/needles/gnome/layout_us-gdm-20161215.json index 91dd0898..5769532d 100644 --- a/needles/gnome/layout_us-gdm-20161215.json +++ b/needles/gnome/layout_us-gdm-20161215.json @@ -9,6 +9,7 @@ } ], "tags": [ - "gnome_layout_us" + "gnome_layout_us", + "gnome_layout_ascii" ] } diff --git a/templates b/templates index e6c5fc67..12b2a6e6 100755 --- a/templates +++ b/templates @@ -1117,6 +1117,17 @@ }, test_suite => { name => "install_cyrillic_language" }, }, + { + machine => { name => "64bit" }, + prio => 40, + product => { + arch => "x86_64", + distri => "fedora", + flavor => "universal", + version => "*", + }, + test_suite => { name => "install_asian_language" }, + }, { machine => { name => "64bit" }, prio => 40, @@ -1956,6 +1967,20 @@ { key => "REPOSITORY_VARIATION", value => "%LOCATION%" }, ], }, + { + name => "install_asian_language", + settings => [ + { key => "LANGUAGE", value => "japanese" }, + { key => "DESKTOP", value => "gnome" }, + { key => "PACKAGE_SET", value => "workstation" }, + { key => "INPUT_METHOD", value => "1" }, + { key => "USER_LOGIN", value => "qwerty" }, + { key => "ROOT_PASSWORD", value => "weakpassword" }, + { key => "ENCRYPT_PASSWORD", value => "weakpassword" }, + { key => "POSTINSTALL", value => "_console_login" }, + { key => "REPOSITORY_VARIATION", value => "%LOCATION%" }, + ], + }, { name => "install_xfs", settings => [ diff --git a/tests/_do_install_and_reboot.pm b/tests/_do_install_and_reboot.pm index 887ff23e..8010e8ae 100644 --- a/tests/_do_install_and_reboot.pm +++ b/tests/_do_install_and_reboot.pm @@ -8,8 +8,8 @@ sub type_user_password { my $user_password = get_var("USER_PASSWORD") || "weakpassword"; if (get_var("SWITCHED_LAYOUT")) { # we double the password, the second time using the native - # layout, so the password has both US and native characters - desktop_switch_layout "us", "anaconda"; + # layout, so the password has both ASCII and native characters + desktop_switch_layout "ascii", "anaconda"; type_very_safely $user_password; desktop_switch_layout "native", "anaconda"; type_very_safely $user_password; @@ -37,7 +37,7 @@ sub run { assert_screen "anaconda_install_root_password_screen"; # wait out animation wait_still_screen 2; - desktop_switch_layout("us", "anaconda") if (get_var("SWITCHED_LAYOUT")); + desktop_switch_layout("ascii", "anaconda") if (get_var("SWITCHED_LAYOUT")); if (get_var("IMAGETYPE") eq 'dvd-ostree') { # we can't type SUPER safely for ostree installer tests, as # the install completes quite fast and if we type too slow diff --git a/tests/_graphical_input.pm b/tests/_graphical_input.pm new file mode 100644 index 00000000..96d5d6d1 --- /dev/null +++ b/tests/_graphical_input.pm @@ -0,0 +1,41 @@ +use base "installedtest"; +use strict; +use testapi; +use main_common; + +sub run { + # 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') { + # assume we can test input from whatever 'alt-f1' opens + send_key "alt-f1"; + 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"; + assert_screen "graphical_desktop_clean"; + } +} + +sub test_flags { + # without anything - rollback to 'lastgood' snapshot if failed + # 'fatal' - whole test suite is in danger if this fails + # 'milestone' - after this test succeeds, update 'lastgood' + # 'important' - if this fails, set the overall state to 'fail' + return { fatal => 1 }; +} + +1; + +# vim: set sw=4 et: diff --git a/tests/_graphical_wait_login.pm b/tests/_graphical_wait_login.pm index aee81587..3a545641 100644 --- a/tests/_graphical_wait_login.pm +++ b/tests/_graphical_wait_login.pm @@ -27,7 +27,7 @@ sub run { # see _do_install_and_reboot; when layout is switched # user password is doubled to contain both US and native # chars - desktop_switch_layout 'us'; + desktop_switch_layout 'ascii'; type_very_safely $password; desktop_switch_layout 'native'; type_very_safely $password; @@ -49,6 +49,14 @@ sub run { # to the next screen between clicks mouse_set(100, 100); wait_screen_change { assert_and_click "next_button"; }; + # for Japanese, we need to workaround a bug on the keyboard + # selection screen + if ($n == 1 && get_var("LANGUAGE") eq 'japanese') { + if (!check_screen 'initial_setup_kana_kanji_selected', 5) { + record_soft_failure 'kana kanji not selected: bgo#776189'; + assert_and_click 'initial_setup_kana_kanji'; + } + } } # click 'Skip' one time mouse_set(100,100); @@ -64,11 +72,6 @@ sub run { mouse_set(300, 200); # KDE can take ages to start up assert_screen "graphical_desktop_clean", 120; - if (get_var("SWITCHED_LAYOUT")) { - # check both layouts are available at the desktop - desktop_switch_layout 'us'; - desktop_switch_layout 'native'; - } } } diff --git a/tests/disk_guided_encrypted.pm b/tests/disk_guided_encrypted.pm index 39a5c424..9e1eca12 100644 --- a/tests/disk_guided_encrypted.pm +++ b/tests/disk_guided_encrypted.pm @@ -16,7 +16,7 @@ sub run { # type password for disk encryption wait_idle 5; if (get_var("SWITCHED_LAYOUT")) { - desktop_switch_layout "us", "anaconda"; + desktop_switch_layout "ascii", "anaconda"; } type_safely get_var("ENCRYPT_PASSWORD"); wait_screen_change { send_key "tab"; };