2016-12-21 16:41:00 +00:00
|
|
|
use base "installedtest";
|
|
|
|
use strict;
|
|
|
|
use testapi;
|
2017-01-18 07:15:44 +00:00
|
|
|
use utils;
|
2016-12-21 16:41:00 +00:00
|
|
|
|
|
|
|
sub run {
|
2021-06-15 21:16:26 +00:00
|
|
|
my $relnum = get_release_number;
|
2022-05-16 23:05:15 +00:00
|
|
|
if (get_var("LANGUAGE") eq 'japanese') {
|
2021-09-28 20:02:14 +00:00
|
|
|
# give GNOME a minute to settle
|
|
|
|
wait_still_screen 5;
|
2021-06-15 21:16:26 +00:00
|
|
|
# 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
|
2023-02-22 21:57:33 +00:00
|
|
|
# '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";
|
2021-10-20 20:35:40 +00:00
|
|
|
unless (check_screen "desktop_add_input_source", 30) {
|
|
|
|
# first attempt to run this often fails for some reason
|
|
|
|
check_desktop;
|
2023-03-03 18:28:43 +00:00
|
|
|
menu_launch_type "hotkey";
|
2021-10-20 20:35:40 +00:00
|
|
|
}
|
2021-06-15 21:16:26 +00:00
|
|
|
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";
|
|
|
|
}
|
2017-07-10 21:41:57 +00:00
|
|
|
# do this from the overview because the desktop uses the stupid
|
|
|
|
# transparent top bar which messes with our needles
|
2021-09-06 15:34:45 +00:00
|
|
|
send_key "super";
|
2017-07-10 21:41:57 +00:00
|
|
|
assert_screen "overview_app_grid";
|
2016-12-21 16:41:00 +00:00
|
|
|
# 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') {
|
2017-03-20 18:32:50 +00:00
|
|
|
# wait a bit for input switch to complete
|
|
|
|
sleep 3;
|
2020-07-09 00:24:51 +00:00
|
|
|
|
2021-09-06 15:34:45 +00:00
|
|
|
# assume we can test input from whatever 'super' opened
|
2016-12-21 16:41:00 +00:00
|
|
|
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";
|
Add desktop login test, revise and rename check_desktop
This adds a new test that implementsQA:Testcase_desktop_login
on both GNOME and KDE.
While working on this, we realized that the "desktop_clean"
needles were really "app menu" needles, and for KDE, this was
a duplication with the new "system menu" needles, because on KDE
the app menu and the system menu are the same. So I (Adam)
started to de-duplicate that, but also realized that "app menu
button" is a much more accurate name for these needles, so I was
renaming the old desktop_clean needles to app_menu_button. That
led me to the realization that "check_desktop_clean" is itself a
dumb name, because we don't (at least, any more, way back in the
mists of time we may have done) do anything to check that the
desktop is "clean" - we're really just asserting that we're at a
desktop *at all*. While thinking *that* through, I *also* realized
that the whole "open the overview and look for the app grid icon"
workaround it did is no longer necessary, because GNOME doesn't
use a translucent top bar any more. That went away in GNOME 3.32,
which is in Fedora 30, our oldest supported release.
So I threw that away, renamed the function "check_desktop",
cleaned up all the needle naming and tagging, and also added an
app menu needle for GNOME in Japanese because we were missing
one (the Japanese tests have been using the "app grid icon"
workaround the whole time).
2020-03-20 09:04:43 +00:00
|
|
|
check_desktop;
|
2016-12-21 16:41:00 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
sub test_flags {
|
2022-07-28 20:32:57 +00:00
|
|
|
return {fatal => 1, always_rollback => 1};
|
2016-12-21 16:41:00 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
1;
|
|
|
|
|
|
|
|
# vim: set sw=4 et:
|