diff --git a/needles/gnome/apps/weather/weather_about_shown-20220809.json b/needles/gnome/apps/weather/weather_about_shown-20220809.json new file mode 100644 index 00000000..97724284 --- /dev/null +++ b/needles/gnome/apps/weather/weather_about_shown-20220809.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 438, + "width": 145, + "type": "match", + "ypos": 168, + "height": 167 + } + ], + "properties": [], + "tags": [ + "weather_about_shown" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_about_shown-20220809.png b/needles/gnome/apps/weather/weather_about_shown-20220809.png new file mode 100644 index 00000000..b399e14b Binary files /dev/null and b/needles/gnome/apps/weather/weather_about_shown-20220809.png differ diff --git a/needles/gnome/apps/weather/weather_about_shown.json b/needles/gnome/apps/weather/weather_about_shown.json new file mode 100644 index 00000000..9ae910fb --- /dev/null +++ b/needles/gnome/apps/weather/weather_about_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_about_shown" + ], + "area": [ + { + "xpos": 440, + "ypos": 278, + "width": 145, + "height": 114, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_about_shown.png b/needles/gnome/apps/weather/weather_about_shown.png new file mode 100644 index 00000000..ebcc9396 Binary files /dev/null and b/needles/gnome/apps/weather/weather_about_shown.png differ diff --git a/needles/gnome/apps/weather/weather_button_daily.json b/needles/gnome/apps/weather/weather_button_daily.json new file mode 100644 index 00000000..2cb3ed75 --- /dev/null +++ b/needles/gnome/apps/weather/weather_button_daily.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_button_daily" + ], + "area": [ + { + "xpos": 542, + "ypos": 113, + "width": 63, + "height": 28, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_button_daily.png b/needles/gnome/apps/weather/weather_button_daily.png new file mode 100644 index 00000000..09fd58b3 Binary files /dev/null and b/needles/gnome/apps/weather/weather_button_daily.png differ diff --git a/needles/gnome/apps/weather/weather_credits_shown-20220809.json b/needles/gnome/apps/weather/weather_credits_shown-20220809.json new file mode 100644 index 00000000..1275dd20 --- /dev/null +++ b/needles/gnome/apps/weather/weather_credits_shown-20220809.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "height": 75, + "ypos": 181, + "width": 154, + "type": "match", + "xpos": 342 + } + ], + "properties": [], + "tags": [ + "weather_credits_shown" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_credits_shown-20220809.png b/needles/gnome/apps/weather/weather_credits_shown-20220809.png new file mode 100644 index 00000000..81b9be2b Binary files /dev/null and b/needles/gnome/apps/weather/weather_credits_shown-20220809.png differ diff --git a/needles/gnome/apps/weather/weather_credits_shown.json b/needles/gnome/apps/weather/weather_credits_shown.json new file mode 100644 index 00000000..38d2bcb9 --- /dev/null +++ b/needles/gnome/apps/weather/weather_credits_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_credits_shown" + ], + "area": [ + { + "xpos": 353, + "ypos": 403, + "width": 189, + "height": 23, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_credits_shown.png b/needles/gnome/apps/weather/weather_credits_shown.png new file mode 100644 index 00000000..20c3b8ed Binary files /dev/null and b/needles/gnome/apps/weather/weather_credits_shown.png differ diff --git a/needles/gnome/apps/weather/weather_icon_current_moon-20220809.json b/needles/gnome/apps/weather/weather_icon_current_moon-20220809.json new file mode 100644 index 00000000..d379a74b --- /dev/null +++ b/needles/gnome/apps/weather/weather_icon_current_moon-20220809.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 27, + "width": 86, + "type": "match", + "ypos": 100, + "height": 86 + } + ], + "properties": [], + "tags": [ + "weather_icon_current" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_icon_current_moon-20220809.png b/needles/gnome/apps/weather/weather_icon_current_moon-20220809.png new file mode 100644 index 00000000..fd225c99 Binary files /dev/null and b/needles/gnome/apps/weather/weather_icon_current_moon-20220809.png differ diff --git a/needles/gnome/apps/weather/weather_icon_current_sun.json b/needles/gnome/apps/weather/weather_icon_current_sun.json new file mode 100644 index 00000000..73dd2b19 --- /dev/null +++ b/needles/gnome/apps/weather/weather_icon_current_sun.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_icon_current" + ], + "area": [ + { + "xpos": 149, + "ypos": 169, + "width": 86, + "height": 86, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_icon_current_sun.png b/needles/gnome/apps/weather/weather_icon_current_sun.png new file mode 100644 index 00000000..e0d840be Binary files /dev/null and b/needles/gnome/apps/weather/weather_icon_current_sun.png differ diff --git a/needles/gnome/apps/weather/weather_icon_smaller_sun.json b/needles/gnome/apps/weather/weather_icon_smaller_sun.json new file mode 100644 index 00000000..5ab6ea5c --- /dev/null +++ b/needles/gnome/apps/weather/weather_icon_smaller_sun.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_icon_smaller" + ], + "area": [ + { + "xpos": 159, + "ypos": 352, + "width": 45, + "height": 41, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_icon_smaller_sun.png b/needles/gnome/apps/weather/weather_icon_smaller_sun.png new file mode 100644 index 00000000..b211e89b Binary files /dev/null and b/needles/gnome/apps/weather/weather_icon_smaller_sun.png differ diff --git a/needles/gnome/apps/weather/weather_menu_about.json b/needles/gnome/apps/weather/weather_menu_about.json new file mode 100644 index 00000000..373bac9d --- /dev/null +++ b/needles/gnome/apps/weather/weather_menu_about.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 847, + "ypos": 141, + "width": 104, + "height": 21, + "type": "match" + } + ], + "properties": [], + "tags": [ + "weather_menu_about" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_menu_about.png b/needles/gnome/apps/weather/weather_menu_about.png new file mode 100644 index 00000000..6433418f Binary files /dev/null and b/needles/gnome/apps/weather/weather_menu_about.png differ diff --git a/needles/gnome/apps/weather/weather_report_daily-20220722.json b/needles/gnome/apps/weather/weather_report_daily-20220722.json new file mode 100644 index 00000000..092bea0a --- /dev/null +++ b/needles/gnome/apps/weather/weather_report_daily-20220722.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 492, + "ypos": 222, + "width": 37, + "height": 25, + "type": "match" + } + ], + "properties": [], + "tags": [ + "weather_report_daily" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_report_daily-20220722.png b/needles/gnome/apps/weather/weather_report_daily-20220722.png new file mode 100644 index 00000000..56e43ccb Binary files /dev/null and b/needles/gnome/apps/weather/weather_report_daily-20220722.png differ diff --git a/needles/gnome/apps/weather/weather_report_daily.json b/needles/gnome/apps/weather/weather_report_daily.json new file mode 100644 index 00000000..e0589a68 --- /dev/null +++ b/needles/gnome/apps/weather/weather_report_daily.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_report_daily" + ], + "area": [ + { + "xpos": 165, + "ypos": 300, + "width": 33, + "height": 19, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_report_daily.png b/needles/gnome/apps/weather/weather_report_daily.png new file mode 100644 index 00000000..40790bfa Binary files /dev/null and b/needles/gnome/apps/weather/weather_report_daily.png differ diff --git a/needles/gnome/apps/weather/weather_report_hourly.json b/needles/gnome/apps/weather/weather_report_hourly.json new file mode 100644 index 00000000..f718fdda --- /dev/null +++ b/needles/gnome/apps/weather/weather_report_hourly.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_report_hourly" + ], + "area": [ + { + "xpos": 219, + "ypos": 289, + "width": 52, + "height": 24, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_report_hourly.png b/needles/gnome/apps/weather/weather_report_hourly.png new file mode 100644 index 00000000..e61501e7 Binary files /dev/null and b/needles/gnome/apps/weather/weather_report_hourly.png differ diff --git a/needles/gnome/apps/weather/weather_report_hourly_later.json b/needles/gnome/apps/weather/weather_report_hourly_later.json new file mode 100644 index 00000000..32151541 --- /dev/null +++ b/needles/gnome/apps/weather/weather_report_hourly_later.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 707, + "ypos": 221, + "width": 45, + "height": 21, + "type": "match" + } + ], + "properties": [], + "tags": [ + "weather_report_hourly" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_report_hourly_later.png b/needles/gnome/apps/weather/weather_report_hourly_later.png new file mode 100644 index 00000000..65ef2194 Binary files /dev/null and b/needles/gnome/apps/weather/weather_report_hourly_later.png differ diff --git a/needles/gnome/apps/weather/weather_search_city.json b/needles/gnome/apps/weather/weather_search_city.json new file mode 100644 index 00000000..84d4934a --- /dev/null +++ b/needles/gnome/apps/weather/weather_search_city.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_search_city" + ], + "area": [ + { + "xpos": 410, + "ypos": 510, + "width": 184, + "height": 23, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_search_city.png b/needles/gnome/apps/weather/weather_search_city.png new file mode 100644 index 00000000..821bffc2 Binary files /dev/null and b/needles/gnome/apps/weather/weather_search_city.png differ diff --git a/needles/gnome/apps/weather/weather_select_city.json b/needles/gnome/apps/weather/weather_select_city.json new file mode 100644 index 00000000..a301b6ce --- /dev/null +++ b/needles/gnome/apps/weather/weather_select_city.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "weather_select_city" + ], + "area": [ + { + "xpos": 346, + "ypos": 314, + "width": 91, + "height": 37, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/weather/weather_select_city.png b/needles/gnome/apps/weather/weather_select_city.png new file mode 100644 index 00000000..c010f9c4 Binary files /dev/null and b/needles/gnome/apps/weather/weather_select_city.png differ diff --git a/templates.fif.json b/templates.fif.json index 457b25a1..99709af7 100644 --- a/templates.fif.json +++ b/templates.fif.json @@ -1152,6 +1152,22 @@ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%" } }, + "weather": { + "profiles": { + "fedora-Silverblue-dvd_ostree-iso-ppc64le-*-ppc64le": 50, + "fedora-Silverblue-dvd_ostree-iso-x86_64-*-64bit": 50, + "fedora-Workstation-live-iso-ppc64le-*-ppc64le": 20, + "fedora-Workstation-live-iso-x86_64-*-64bit": 20, + "fedora-Workstation-upgrade-aarch64-*-aarch64": 40, + "fedora-Workstation-raw_xz-raw.xz-aarch64-*-aarch64": 22 + }, + "settings": { + "BOOTFROM": "c", + "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2", + "POSTINSTALL_PATH": "tests/applications/weather", + "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%" + } + }, "desktop_update_graphical": { "profiles": { "fedora-KDE-live-iso-x86_64-*-64bit": 32, diff --git a/tests/applications/weather/aaa_setup.pm b/tests/applications/weather/aaa_setup.pm new file mode 100644 index 00000000..f561a63a --- /dev/null +++ b/tests/applications/weather/aaa_setup.pm @@ -0,0 +1,42 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will start the Gnome Weather application and save +# the image for all subsequent tests. + +sub run { + my $self = shift; + + # Start the Application + menu_launch_type("weather"); + assert_screen ["apps_run_weather", "grant_access"]; + # give access rights if asked + if (match_has_tag 'grant_access') { + click_lastmatch; + assert_screen 'apps_run_weather'; + } + + # Make it fill the entire window. + send_key("super-up"); + wait_still_screen(2); + + # Search for the city, different from the default one + # as the default one can differ between zones. + if (check_screen("weather_search_city")) { + click_lastmatch; + } + type_very_safely("Brno"); + assert_and_click("weather_select_city"); +} + +sub test_flags { + # If this test fails, there is no need to continue. + return {fatal => 1, milestone => 1}; +} + +1; + +# vim: set sw=4 et: + diff --git a/tests/applications/weather/about.pm b/tests/applications/weather/about.pm new file mode 100644 index 00000000..126a88a5 --- /dev/null +++ b/tests/applications/weather/about.pm @@ -0,0 +1,29 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will start the Gnome Weather application and save +# the image for all subsequent tests. + +sub run { + my $self = shift; + + # Open the Menu + assert_and_click("gnome_burger_menu"); + assert_and_click("weather_menu_about"); + assert_screen("weather_about_shown"); + # Change to Credits + assert_and_click("gnome_button_credits"); + assert_screen("weather_credits_shown"); +} + +sub test_flags { + # If this test fails, there is no need to continue. + return {always_rollback => 1}; +} + +1; + +# vim: set sw=4 et: + diff --git a/tests/applications/weather/weather_report.pm b/tests/applications/weather/weather_report.pm new file mode 100644 index 00000000..f39cf376 --- /dev/null +++ b/tests/applications/weather/weather_report.pm @@ -0,0 +1,38 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will start the Gnome Weather application and save +# the image for all subsequent tests. + +sub run { + my $self = shift; + + # The application should have started in the Hourly regime + # so let us check that it really is in this regime. + assert_screen("weather_report_hourly"); + # Assert that a big icon is visible. + assert_screen("weather_icon_current"); + # Assert that one of the smaller icons is available. + assert_screen("weather_icon_smaller"); + + # Change the report to a daily report. + assert_and_click("weather_button_daily"); + # Assert that the view changed to Days and not Hours + assert_screen("weather_report_daily"); + # Assert that a big icon is visible. + assert_screen("weather_icon_current"); + # Assert that one of the smaller icons is available. + assert_screen("weather_icon_smaller"); +} + +sub test_flags { + # If this test fails, there is no need to continue. + return {no_rollback => 1}; +} + +1; + +# vim: set sw=4 et: +