diff --git a/lib/packagetest.pm b/lib/packagetest.pm index a0a3e05d..7892bdfe 100644 --- a/lib/packagetest.pm +++ b/lib/packagetest.pm @@ -21,6 +21,10 @@ sub prepare_test_packages { assert_script_run 'curl -o /etc/yum.repos.d/openqa-testrepo-1.repo https://fedorapeople.org/groups/qa/openqa-repos/openqa-testrepo-1.repo'; # install the test packages from repo1 assert_script_run 'dnf -y --disablerepo=* --enablerepo=openqa-testrepo-1 install python3-kickstart'; + if (get_var("DESKTOP") eq 'kde' && get_var("TEST") eq 'desktop_update_graphical') { + # kick pkcon so our special update will definitely get installed + assert_script_run 'pkcon refresh force'; + } } # check our test packages installed correctly (this is a test that dnf diff --git a/tests/desktop_update_graphical.pm b/tests/desktop_update_graphical.pm index e436b68a..2ddbf945 100644 --- a/tests/desktop_update_graphical.pm +++ b/tests/desktop_update_graphical.pm @@ -39,8 +39,12 @@ sub run { } } assert_and_click 'desktop_package_tool_update'; - # refresh updates - assert_and_click 'desktop_package_tool_update_refresh', '', 120; + # if this is KDE and it had already noticed the notification, we + # will already have the apply button at this point + unless (check_screen 'desktop_package_tool_update_apply', 5) { + # refresh updates + assert_and_click 'desktop_package_tool_update_refresh', '', 120; + } # wait for refresh, then apply updates, using a C-style loop so we # can reset it if needed due to RHBZ #1314991 for (my $n = 1; $n < 6; $n++) {