diff --git a/needles/kde/desktop_package_tool_update_authenticate.json b/needles/kde/desktop_package_tool_update_authenticate.json new file mode 100644 index 00000000..85fd6a77 --- /dev/null +++ b/needles/kde/desktop_package_tool_update_authenticate.json @@ -0,0 +1,16 @@ +{ + "properties": [], + "area": [ + { + "xpos": 254, + "ypos": 167, + "width": 71, + "height": 61, + "type": "match" + } + ], + "tags": [ + "DESKTOP-kde", + "desktop_package_tool_update_authenticate" + ] +} \ No newline at end of file diff --git a/needles/kde/desktop_package_tool_update_authenticate.png b/needles/kde/desktop_package_tool_update_authenticate.png new file mode 100644 index 00000000..5d15f196 Binary files /dev/null and b/needles/kde/desktop_package_tool_update_authenticate.png differ diff --git a/needles/kde/desktop_package_tool_update_done.json b/needles/kde/desktop_package_tool_update_done.json index c7aa07aa..0e988cdb 100644 --- a/needles/kde/desktop_package_tool_update_done.json +++ b/needles/kde/desktop_package_tool_update_done.json @@ -1,16 +1,16 @@ { - "properties": [], - "area": [ - { - "xpos": 634, - "ypos": 665, - "width": 41, - "height": 44, - "type": "match" - } - ], - "tags": [ - "DESKTOP-kde", - "desktop_package_tool_update_done" - ] + "area": [ + { + "height": 24, + "type": "match", + "width": 21, + "xpos": 644, + "ypos": 675 + } + ], + "properties": [], + "tags": [ + "DESKTOP-kde", + "desktop_package_tool_update_done" + ] } \ No newline at end of file diff --git a/tests/desktop_update_graphical_postinstall.pm b/tests/desktop_update_graphical_postinstall.pm index 4bed9402..133f7219 100644 --- a/tests/desktop_update_graphical_postinstall.pm +++ b/tests/desktop_update_graphical_postinstall.pm @@ -1,6 +1,7 @@ use base "installedtest"; use strict; use testapi; +use main_common; use packagetest; sub run { @@ -46,6 +47,11 @@ sub run { mouse_set 10, 10; mouse_hide; } + # KDE annoyingly pops the notification up right over the install + # button, which doesn't help...wait for it to go away + if ($desktop eq 'kde') { + wait_still_screen 5; + } assert_and_click 'desktop_package_tool_update_apply'; # on GNOME, wait for reboots. if ($desktop eq 'gnome') { @@ -58,7 +64,19 @@ sub run { assert_screen 'graphical_login', 300; } else { - assert_screen 'desktop_package_tool_update_done', 180; + # KDE will prompt for authentication if any package is not + # signed. As of 2016-09-23, puiterwijk claims Rawhide packages + # will be autosigned 'by Monday', so if this happens, we're + # going to treat it as a soft fail, indicating the update + # mechanism works, but a package that should have been signed + # was not. + assert_screen ['desktop_package_tool_update_done', 'desktop_package_tool_update_authenticate'], 180; + if (match_has_tag('desktop_package_tool_update_authenticate')) { + record_soft_failure; + type_very_safely get_var('USER_PASSWORD', 'weakpassword'); + send_key 'ret'; + assert_screen 'desktop_package_tool_update_done', 180; + } } # back to console to verify updates $self->root_console(tty=>3);