diff --git a/needles/gnome/desktop_package_tool_update_bz1314991.json b/needles/gnome/desktop_package_tool_update_bz1314991.json new file mode 100644 index 00000000..1b0fe0d2 --- /dev/null +++ b/needles/gnome/desktop_package_tool_update_bz1314991.json @@ -0,0 +1,16 @@ +{ + "tags": [ + "DESKTOP-gnome", + "desktop_package_tool_update_bz1314991" + ], + "properties": [], + "area": [ + { + "xpos": 455, + "ypos": 344, + "width": 114, + "height": 114, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/desktop_package_tool_update_bz1314991.png b/needles/gnome/desktop_package_tool_update_bz1314991.png new file mode 100644 index 00000000..5336c81c Binary files /dev/null and b/needles/gnome/desktop_package_tool_update_bz1314991.png differ diff --git a/tests/desktop_update_graphical.pm b/tests/desktop_update_graphical.pm index 80fe5d79..2791091e 100644 --- a/tests/desktop_update_graphical.pm +++ b/tests/desktop_update_graphical.pm @@ -41,8 +41,16 @@ sub run { assert_and_click 'desktop_package_tool_update'; # refresh updates assert_and_click 'desktop_package_tool_update_refresh', '', 120; - # wait for refresh, then apply updates - for my $n (1..5) { + # 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++) { + # Check if we see the 'cancelled by user action' error we get + # when #1314991 happens, if so, refresh and restart the loop + if (check_screen 'desktop_package_tool_update_bz1314991', 1) { + record_soft_failure "RHBZ #1314991 (background PK operation interfered with update)"; + assert_and_click 'desktop_package_tool_update_refresh'; + $n = 1; + } last if (check_screen 'desktop_package_tool_update_apply', 120); mouse_set 10, 10; mouse_hide;