add an Asian (Japanese) language install test
Summary: Include some basic testing of Japanese input, and split the input testing (including Russian) into a separate module, since it's not really part of 'login' testing. Test Plan: Run the test, and the Russian and French tests too to make sure they didn't break. Tested on staging. Note the Japanese test soft fails, intentionally, at present, as I discovered a bug while working on it: https://bugzilla.gnome.org/show_bug.cgi?id=776189 Reviewers: jskladan, garretraziel Reviewed By: garretraziel Subscribers: tflink Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1072
@ -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
|
# 'environment' can be a desktop name or 'anaconda' for anaconda
|
||||||
# if not set, will use get_var('DESKTOP') or default 'anaconda'
|
# if not set, will use get_var('DESKTOP') or default 'anaconda'
|
||||||
sub desktop_switch_layout {
|
sub desktop_switch_layout {
|
||||||
my ($layout, $environment) = @_;
|
my ($layout, $environment) = @_;
|
||||||
$layout //= 'us';
|
$layout //= 'ascii';
|
||||||
$environment //= get_var("DESKTOP", "anaconda");
|
$environment //= get_var("DESKTOP", "anaconda");
|
||||||
# if already selected, we're good
|
# if already selected, we're good
|
||||||
return if (check_screen "${environment}_layout_${layout}", 3);
|
return if (check_screen "${environment}_layout_${layout}", 3);
|
||||||
|
6
main.pm
@ -183,7 +183,11 @@ sub load_postinstall_tests() {
|
|||||||
if (get_var("DESKTOP")) {
|
if (get_var("DESKTOP")) {
|
||||||
autotest::loadtest "tests/_graphical_wait_login.pm";
|
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";
|
autotest::loadtest "tests/_console_wait_login.pm";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 22,
|
||||||
|
"ypos": 584,
|
||||||
|
"width": 136,
|
||||||
|
"height": 17,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_install_destination_encrypt_data"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 109 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_install_destination_save_passphrase"
|
||||||
|
],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 647,
|
||||||
|
"ypos": 521,
|
||||||
|
"width": 118,
|
||||||
|
"height": 13,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 122 KiB |
@ -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"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 95 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 212,
|
||||||
|
"ypos": 125,
|
||||||
|
"width": 96,
|
||||||
|
"height": 13,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_install_root_password_screen"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 58 KiB |
@ -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"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 68 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 267,
|
||||||
|
"ypos": 155,
|
||||||
|
"width": 71,
|
||||||
|
"height": 14,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_install_user_creation_screen"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 69 KiB |
@ -9,6 +9,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"tags": [
|
"tags": [
|
||||||
"anaconda_layout_us"
|
"anaconda_layout_us",
|
||||||
|
"anaconda_layout_ascii"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
"properties": [],
|
"properties": [],
|
||||||
"tags": [
|
"tags": [
|
||||||
"LANGUAGE-russian",
|
"LANGUAGE-russian",
|
||||||
|
"LANGUAGE-japanese",
|
||||||
"anaconda_install_user_created"
|
"anaconda_install_user_created"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 950,
|
||||||
|
"ypos": 736,
|
||||||
|
"width": 27,
|
||||||
|
"height": 15,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_select_install_lang_continue"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 78 KiB |
@ -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"
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 73 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_select_install_lang_selected"
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 608,
|
||||||
|
"ypos": 201,
|
||||||
|
"width": 93,
|
||||||
|
"height": 16,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 78 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_main_hub_begin_installation"
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 864,
|
||||||
|
"ypos": 709,
|
||||||
|
"width": 116,
|
||||||
|
"height": 12,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 109 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_rawhide_accept_fate"
|
||||||
|
],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 613,
|
||||||
|
"ypos": 469,
|
||||||
|
"width": 118,
|
||||||
|
"height": 14,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 100 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"anaconda_spoke_done"
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 34,
|
||||||
|
"ypos": 55,
|
||||||
|
"width": 27,
|
||||||
|
"height": 13,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 183 KiB |
24
needles/gnome/japanese/desktop_clean_japanese-20161217.json
Normal file
@ -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
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/desktop_clean_japanese-20161217.png
Normal file
After Width: | Height: | Size: 396 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 455,
|
||||||
|
"ypos": 34,
|
||||||
|
"width": 112,
|
||||||
|
"height": 15,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"getting_started"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/getting_started_japanese-20161217.png
Normal file
After Width: | Height: | Size: 71 KiB |
15
needles/gnome/japanese/initial_setup_kana_kanji.json
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"height": 15,
|
||||||
|
"type": "match",
|
||||||
|
"width": 121,
|
||||||
|
"xpos": 266,
|
||||||
|
"ypos": 315
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"tags": [
|
||||||
|
"initial_setup_kana_kanji",
|
||||||
|
"LANGUAGE-japanese"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/initial_setup_kana_kanji.png
Normal file
After Width: | Height: | Size: 41 KiB |
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"height": 15,
|
||||||
|
"type": "match",
|
||||||
|
"width": 396,
|
||||||
|
"xpos": 266,
|
||||||
|
"ypos": 315
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"tags": [
|
||||||
|
"initial_setup_kana_kanji_selected",
|
||||||
|
"LANGUAGE-japanese"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/initial_setup_kana_kanji_selected.png
Normal file
After Width: | Height: | Size: 41 KiB |
15
needles/gnome/japanese/layout_ascii_japanese-20161216.json
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"height": 13,
|
||||||
|
"type": "match",
|
||||||
|
"width": 33,
|
||||||
|
"xpos": 853,
|
||||||
|
"ypos": 7
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"tags": [
|
||||||
|
"gnome_layout_ascii",
|
||||||
|
"LANGUAGE-japanese"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/layout_ascii_japanese-20161216.png
Normal file
After Width: | Height: | Size: 434 KiB |
15
needles/gnome/japanese/layout_native_japanese-20161216.json
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"height": 15,
|
||||||
|
"type": "match",
|
||||||
|
"width": 33,
|
||||||
|
"xpos": 853,
|
||||||
|
"ypos": 5
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"tags": [
|
||||||
|
"gnome_layout_native",
|
||||||
|
"LANGUAGE-japanese"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/layout_native_japanese-20161216.png
Normal file
After Width: | Height: | Size: 435 KiB |
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 342,
|
||||||
|
"ypos": 377,
|
||||||
|
"width": 338,
|
||||||
|
"height": 55,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"graphical_login_input"
|
||||||
|
],
|
||||||
|
"properties": []
|
||||||
|
}
|
BIN
needles/gnome/japanese/login_gdm_input_japanese-20161217.png
Normal file
After Width: | Height: | Size: 187 KiB |
16
needles/gnome/japanese/next_button_japanese-20161217.json
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"next_button"
|
||||||
|
],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 945,
|
||||||
|
"ypos": 43,
|
||||||
|
"width": 33,
|
||||||
|
"height": 14,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/next_button_japanese-20161217.png
Normal file
After Width: | Height: | Size: 40 KiB |
16
needles/gnome/japanese/skip_button_japanese-20161217.json
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 921,
|
||||||
|
"ypos": 42,
|
||||||
|
"width": 60,
|
||||||
|
"height": 15,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"skip_button"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/skip_button_japanese-20161217.png
Normal file
After Width: | Height: | Size: 46 KiB |
31
needles/gnome/japanese/yama_chooser-20161217.json
Normal file
@ -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"
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/yama_chooser-20161217.png
Normal file
After Width: | Height: | Size: 308 KiB |
17
needles/gnome/japanese/yama_hiragana-20161217.json
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"tags": [
|
||||||
|
"DESKTOP-gnome",
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"desktop_yama_hiragana"
|
||||||
|
],
|
||||||
|
"properties": [],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 384,
|
||||||
|
"ypos": 61,
|
||||||
|
"width": 29,
|
||||||
|
"height": 14,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/yama_hiragana-20161217.png
Normal file
After Width: | Height: | Size: 297 KiB |
17
needles/gnome/japanese/yama_kanji-20161217.json
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"properties": [],
|
||||||
|
"tags": [
|
||||||
|
"DESKTOP-gnome",
|
||||||
|
"LANGUAGE-japanese",
|
||||||
|
"desktop_yama_kanji"
|
||||||
|
],
|
||||||
|
"area": [
|
||||||
|
{
|
||||||
|
"xpos": 385,
|
||||||
|
"ypos": 61,
|
||||||
|
"width": 13,
|
||||||
|
"height": 16,
|
||||||
|
"type": "match"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
BIN
needles/gnome/japanese/yama_kanji-20161217.png
Normal file
After Width: | Height: | Size: 297 KiB |
@ -10,6 +10,7 @@
|
|||||||
],
|
],
|
||||||
"properties": [],
|
"properties": [],
|
||||||
"tags": [
|
"tags": [
|
||||||
"gnome_layout_us"
|
"gnome_layout_us",
|
||||||
|
"gnome_layout_ascii"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"tags": [
|
"tags": [
|
||||||
"gnome_layout_us"
|
"gnome_layout_us",
|
||||||
|
"gnome_layout_ascii"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
25
templates
@ -1117,6 +1117,17 @@
|
|||||||
},
|
},
|
||||||
test_suite => { name => "install_cyrillic_language" },
|
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" },
|
machine => { name => "64bit" },
|
||||||
prio => 40,
|
prio => 40,
|
||||||
@ -1956,6 +1967,20 @@
|
|||||||
{ key => "REPOSITORY_VARIATION", value => "%LOCATION%" },
|
{ 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",
|
name => "install_xfs",
|
||||||
settings => [
|
settings => [
|
||||||
|
@ -8,8 +8,8 @@ sub type_user_password {
|
|||||||
my $user_password = get_var("USER_PASSWORD") || "weakpassword";
|
my $user_password = get_var("USER_PASSWORD") || "weakpassword";
|
||||||
if (get_var("SWITCHED_LAYOUT")) {
|
if (get_var("SWITCHED_LAYOUT")) {
|
||||||
# we double the password, the second time using the native
|
# we double the password, the second time using the native
|
||||||
# layout, so the password has both US and native characters
|
# layout, so the password has both ASCII and native characters
|
||||||
desktop_switch_layout "us", "anaconda";
|
desktop_switch_layout "ascii", "anaconda";
|
||||||
type_very_safely $user_password;
|
type_very_safely $user_password;
|
||||||
desktop_switch_layout "native", "anaconda";
|
desktop_switch_layout "native", "anaconda";
|
||||||
type_very_safely $user_password;
|
type_very_safely $user_password;
|
||||||
@ -37,7 +37,7 @@ sub run {
|
|||||||
assert_screen "anaconda_install_root_password_screen";
|
assert_screen "anaconda_install_root_password_screen";
|
||||||
# wait out animation
|
# wait out animation
|
||||||
wait_still_screen 2;
|
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') {
|
if (get_var("IMAGETYPE") eq 'dvd-ostree') {
|
||||||
# we can't type SUPER safely for ostree installer tests, as
|
# we can't type SUPER safely for ostree installer tests, as
|
||||||
# the install completes quite fast and if we type too slow
|
# the install completes quite fast and if we type too slow
|
||||||
|
41
tests/_graphical_input.pm
Normal file
@ -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:
|
@ -27,7 +27,7 @@ sub run {
|
|||||||
# see _do_install_and_reboot; when layout is switched
|
# see _do_install_and_reboot; when layout is switched
|
||||||
# user password is doubled to contain both US and native
|
# user password is doubled to contain both US and native
|
||||||
# chars
|
# chars
|
||||||
desktop_switch_layout 'us';
|
desktop_switch_layout 'ascii';
|
||||||
type_very_safely $password;
|
type_very_safely $password;
|
||||||
desktop_switch_layout 'native';
|
desktop_switch_layout 'native';
|
||||||
type_very_safely $password;
|
type_very_safely $password;
|
||||||
@ -49,6 +49,14 @@ sub run {
|
|||||||
# to the next screen between clicks
|
# to the next screen between clicks
|
||||||
mouse_set(100, 100);
|
mouse_set(100, 100);
|
||||||
wait_screen_change { assert_and_click "next_button"; };
|
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
|
# click 'Skip' one time
|
||||||
mouse_set(100,100);
|
mouse_set(100,100);
|
||||||
@ -64,11 +72,6 @@ sub run {
|
|||||||
mouse_set(300, 200);
|
mouse_set(300, 200);
|
||||||
# KDE can take ages to start up
|
# KDE can take ages to start up
|
||||||
assert_screen "graphical_desktop_clean", 120;
|
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';
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ sub run {
|
|||||||
# type password for disk encryption
|
# type password for disk encryption
|
||||||
wait_idle 5;
|
wait_idle 5;
|
||||||
if (get_var("SWITCHED_LAYOUT")) {
|
if (get_var("SWITCHED_LAYOUT")) {
|
||||||
desktop_switch_layout "us", "anaconda";
|
desktop_switch_layout "ascii", "anaconda";
|
||||||
}
|
}
|
||||||
type_safely get_var("ENCRYPT_PASSWORD");
|
type_safely get_var("ENCRYPT_PASSWORD");
|
||||||
wait_screen_change { send_key "tab"; };
|
wait_screen_change { send_key "tab"; };
|
||||||
|