Fixups for Russian web UI install
All checks were successful
CI via Tox and perl / tox (pull_request) Successful in 1m24s
CI via Tox and perl / perl (pull_request) Successful in 3m33s
CI via Tox and perl / checkwiki (pull_request) Successful in 31s
AI Code Review / ai-review (pull_request_target) Successful in 28s

Various fixups so we actually test switched layout Russian install
properly on web UI.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
Adam Williamson 2026-04-01 18:19:34 -07:00
commit 9d74f0f4a7
13 changed files with 88 additions and 4 deletions

View file

@ -237,7 +237,7 @@ for lang in ("english", "russian", "chinese", "arabic", "japanese", "turkish", "
testtags.append(f"gis_lang_{lang}_selected")
testtags.append(f"ps_lang_{lang}_selected")
# keyboard layout needles (only one for now, but maybe more later)
for layout in ("french",):
for layout in ("french","russian"):
testtags.append(f"anaconda_select_install_layout_{layout}_filtered")
testtags.append(f"anaconda_select_install_layout_{layout}_selected")
testtags.append(f"anaconda_webui_layout_{layout}_selected")

View file

@ -1058,10 +1058,22 @@ sub gnome_initial_setup {
# layout is the intended one)
assert_screen "gis_user_created";
}
desktop_switch_layout "ascii" if (get_var("SWITCHED_LAYOUT"));
type_very_safely $user_password;
if (get_var("SWITCHED_LAYOUT")) {
# re-type so the password contains characters in both
# layouts so we can test that this works correctly
desktop_switch_layout "native";
type_very_safely $user_password;
}
# two tabs to get to the confirm box since GNOME 44
type_string "\t\t";
desktop_switch_layout "ascii" if (get_var("SWITCHED_LAYOUT"));
type_very_safely $user_password;
if (get_var("SWITCHED_LAYOUT")) {
desktop_switch_layout "native";
type_very_safely $user_password;
}
wait_screen_change { assert_and_click "next_button"; };
send_key "ret";
}

View file

@ -0,0 +1,16 @@
{
"area": [
{
"xpos": 274,
"ypos": 408,
"height": 28,
"type": "match",
"width": 203
}
],
"properties": [],
"tags": [
"LANGUAGE-russian",
"anaconda_webui_layout_russian_selected"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

View file

@ -0,0 +1,16 @@
{
"area": [
{
"xpos": 478,
"ypos": 414,
"width": 287,
"height": 17,
"type": "match"
}
],
"properties": [],
"tags": [
"LANGUAGE-russian",
"anaconda_webui_layout_system"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

View file

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 410,
"ypos": 504,
"width": 203,
"height": 20,
"type": "match"
}
],
"properties": [],
"tags": [
"desktop_input_source_group_russian"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

View file

@ -0,0 +1,15 @@
{
"area": [
{
"xpos": 334,
"ypos": 296,
"width": 94,
"height": 20,
"type": "match"
}
],
"properties": [],
"tags": [
"desktop_input_source_russian"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

View file

@ -1617,10 +1617,12 @@
"ENCRYPT_PASSWORD": "weakpassword",
"HDDSIZEGB": "15",
"LANGUAGE": "russian",
"LAYOUT": "russian",
"POSTINSTALL": "_console_login",
"QEMU_DISABLE_SNAPSHOTS": "1",
"RETRY": "%INSTALL_RETRY%",
"ROOT_PASSWORD": "weakpassword",
"SWITCHED_LAYOUT": "1",
"USER_LOGIN": "qwerty"
}
},

View file

@ -237,13 +237,16 @@ sub run {
wait_screen_change { click_lastmatch; };
if (match_has_tag "anaconda_webui_layout_system") {
# GNOME input settings: add the layout we want, remove the default
# unless this is a switched layout
assert_and_click "desktop_add_input_source";
assert_and_click "desktop_input_source_group_${layout}";
assert_and_click "desktop_input_source_${layout}";
send_key "ret";
wait_still_screen 3;
assert_and_click "desktop_input_source_first_menu";
assert_and_click "desktop_input_source_remove";
unless (get_var('SWITCHED_LAYOUT')) {
assert_and_click "desktop_input_source_first_menu";
assert_and_click "desktop_input_source_remove";
}
wait_still_screen 3;
send_key "alt-f4";
}

View file

@ -20,7 +20,12 @@ sub run {
# type password for disk encryption
sleep 5;
if (get_var("SWITCHED_LAYOUT")) {
desktop_switch_layout "ascii", "anaconda";
if (get_var("LIVE")) {
desktop_switch_layout "ascii";
}
else {
desktop_switch_layout "ascii", "anaconda";
}
}
type_safely get_var("ENCRYPT_PASSWORD");
wait_screen_change { send_key "tab"; };