diff --git a/needles/gnome/apps/fonts/fonts_about_shown.json b/needles/gnome/apps/fonts/fonts_about_shown.json new file mode 100644 index 00000000..b98e245a --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_about_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_about_shown" + ], + "area": [ + { + "xpos": 445, + "ypos": 234, + "width": 137, + "height": 132, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_about_shown.png b/needles/gnome/apps/fonts/fonts_about_shown.png new file mode 100644 index 00000000..909db152 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_about_shown.png differ diff --git a/needles/gnome/apps/fonts/fonts_c059_font.json b/needles/gnome/apps/fonts/fonts_c059_font.json new file mode 100644 index 00000000..69cc21fd --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_c059_font.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_c059_font" + ], + "area": [ + { + "xpos": 54, + "ypos": 104, + "width": 171, + "height": 157, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_c059_font.png b/needles/gnome/apps/fonts/fonts_c059_font.png new file mode 100644 index 00000000..92631940 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_c059_font.png differ diff --git a/needles/gnome/apps/fonts/fonts_c059_shown.json b/needles/gnome/apps/fonts/fonts_c059_shown.json new file mode 100644 index 00000000..8446c02b --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_c059_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_c059_shown" + ], + "area": [ + { + "xpos": 1, + "ypos": 91, + "width": 459, + "height": 134, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_c059_shown.png b/needles/gnome/apps/fonts/fonts_c059_shown.png new file mode 100644 index 00000000..3abdb9ef Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_c059_shown.png differ diff --git a/needles/gnome/apps/fonts/fonts_cantarell_font.json b/needles/gnome/apps/fonts/fonts_cantarell_font.json new file mode 100644 index 00000000..c82d8272 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_cantarell_font.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_cantarell_font" + ], + "area": [ + { + "xpos": 66, + "ypos": 597, + "width": 143, + "height": 146, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_cantarell_font.png b/needles/gnome/apps/fonts/fonts_cantarell_font.png new file mode 100644 index 00000000..9bdf5388 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_cantarell_font.png differ diff --git a/needles/gnome/apps/fonts/fonts_cantarell_info.json b/needles/gnome/apps/fonts/fonts_cantarell_info.json new file mode 100644 index 00000000..defa116e --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_cantarell_info.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_cantarell_info" + ], + "area": [ + { + "xpos": 14, + "ypos": 96, + "width": 176, + "height": 106, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_cantarell_info.png b/needles/gnome/apps/fonts/fonts_cantarell_info.png new file mode 100644 index 00000000..d6599c71 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_cantarell_info.png differ diff --git a/needles/gnome/apps/fonts/fonts_cantarell_shown.json b/needles/gnome/apps/fonts/fonts_cantarell_shown.json new file mode 100644 index 00000000..011ec864 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_cantarell_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_cantarell_shown" + ], + "area": [ + { + "xpos": 2, + "ypos": 104, + "width": 397, + "height": 149, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_cantarell_shown.png b/needles/gnome/apps/fonts/fonts_cantarell_shown.png new file mode 100644 index 00000000..215619b1 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_cantarell_shown.png differ diff --git a/needles/gnome/apps/fonts/fonts_cantarell_sizes.json b/needles/gnome/apps/fonts/fonts_cantarell_sizes.json new file mode 100644 index 00000000..b9eb9ee4 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_cantarell_sizes.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_cantarell_sizes" + ], + "area": [ + { + "xpos": 9, + "ypos": 262, + "width": 98, + "height": 438, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_cantarell_sizes.png b/needles/gnome/apps/fonts/fonts_cantarell_sizes.png new file mode 100644 index 00000000..00d079df Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_cantarell_sizes.png differ diff --git a/needles/gnome/apps/fonts/fonts_credits_shown-20230328.json b/needles/gnome/apps/fonts/fonts_credits_shown-20230328.json new file mode 100644 index 00000000..c9fb19a9 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_credits_shown-20230328.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "type": "match", + "height": 137, + "ypos": 176, + "xpos": 341, + "width": 138 + } + ], + "properties": [], + "tags": [ + "fonts_credits_shown" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_credits_shown-20230328.png b/needles/gnome/apps/fonts/fonts_credits_shown-20230328.png new file mode 100644 index 00000000..c3bc3202 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_credits_shown-20230328.png differ diff --git a/needles/gnome/apps/fonts/fonts_credits_shown.json b/needles/gnome/apps/fonts/fonts_credits_shown.json new file mode 100644 index 00000000..558827e9 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_credits_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_credits_shown" + ], + "area": [ + { + "xpos": 342, + "ypos": 181, + "width": 138, + "height": 137, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_credits_shown.png b/needles/gnome/apps/fonts/fonts_credits_shown.png new file mode 100644 index 00000000..8e2c8cd4 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_credits_shown.png differ diff --git a/needles/gnome/apps/fonts/fonts_legal_shown.json b/needles/gnome/apps/fonts/fonts_legal_shown.json new file mode 100644 index 00000000..9acc553f --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_legal_shown.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_legal_shown" + ], + "area": [ + { + "xpos": 339, + "ypos": 191, + "width": 307, + "height": 22, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_legal_shown.png b/needles/gnome/apps/fonts/fonts_legal_shown.png new file mode 100644 index 00000000..1c1b2d61 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_legal_shown.png differ diff --git a/needles/gnome/apps/fonts/fonts_liberation_font_found-20230328.json b/needles/gnome/apps/fonts/fonts_liberation_font_found-20230328.json new file mode 100644 index 00000000..3d0bb8c8 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_liberation_font_found-20230328.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 38, + "ypos": 178, + "width": 752, + "height": 101, + "type": "match" + } + ], + "properties": [], + "tags": [ + "fonts_liberation_font_found" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_liberation_font_found-20230328.png b/needles/gnome/apps/fonts/fonts_liberation_font_found-20230328.png new file mode 100644 index 00000000..5674a42c Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_liberation_font_found-20230328.png differ diff --git a/needles/gnome/apps/fonts/fonts_liberation_font_found.json b/needles/gnome/apps/fonts/fonts_liberation_font_found.json new file mode 100644 index 00000000..b8ec6cf0 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_liberation_font_found.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_liberation_font_found" + ], + "area": [ + { + "xpos": 38, + "ypos": 182, + "width": 752, + "height": 101, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_liberation_font_found.png b/needles/gnome/apps/fonts/fonts_liberation_font_found.png new file mode 100644 index 00000000..050932a3 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_liberation_font_found.png differ diff --git a/needles/gnome/apps/fonts/fonts_website_opened-20230209.json b/needles/gnome/apps/fonts/fonts_website_opened-20230209.json new file mode 100644 index 00000000..5028e9f6 --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_website_opened-20230209.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "height": 24, + "ypos": 84, + "type": "match", + "width": 381, + "xpos": 242 + } + ], + "properties": [], + "tags": [ + "fonts_website_opened" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_website_opened-20230209.png b/needles/gnome/apps/fonts/fonts_website_opened-20230209.png new file mode 100644 index 00000000..aa8a4f77 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_website_opened-20230209.png differ diff --git a/needles/gnome/apps/fonts/fonts_website_opened.json b/needles/gnome/apps/fonts/fonts_website_opened.json new file mode 100644 index 00000000..c94c9f5c --- /dev/null +++ b/needles/gnome/apps/fonts/fonts_website_opened.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 241, + "ypos": 84, + "width": 381, + "height": 24, + "type": "match" + } + ], + "properties": [], + "tags": [ + "fonts_website_opened" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/fonts_website_opened.png b/needles/gnome/apps/fonts/fonts_website_opened.png new file mode 100644 index 00000000..24cfd7f9 Binary files /dev/null and b/needles/gnome/apps/fonts/fonts_website_opened.png differ diff --git a/needles/gnome/apps/fonts/gnome_button_info.json b/needles/gnome/apps/fonts/gnome_button_info.json new file mode 100644 index 00000000..79684a0a --- /dev/null +++ b/needles/gnome/apps/fonts/gnome_button_info.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "gnome_button_info" + ], + "area": [ + { + "xpos": 827, + "ypos": 42, + "width": 45, + "height": 26, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/gnome_button_info.png b/needles/gnome/apps/fonts/gnome_button_info.png new file mode 100644 index 00000000..330bfe6d Binary files /dev/null and b/needles/gnome/apps/fonts/gnome_button_info.png differ diff --git a/needles/gnome/apps/fonts/gnome_button_install.json b/needles/gnome/apps/fonts/gnome_button_install.json new file mode 100644 index 00000000..7646d183 --- /dev/null +++ b/needles/gnome/apps/fonts/gnome_button_install.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 913, + "ypos": 45, + "width": 52, + "height": 21, + "type": "match" + } + ], + "properties": [], + "tags": [ + "gnome_button_install" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/gnome_button_install.png b/needles/gnome/apps/fonts/gnome_button_install.png new file mode 100644 index 00000000..217e2e8f Binary files /dev/null and b/needles/gnome/apps/fonts/gnome_button_install.png differ diff --git a/needles/gnome/apps/fonts/gnome_button_legal.json b/needles/gnome/apps/fonts/gnome_button_legal.json new file mode 100644 index 00000000..88807d21 --- /dev/null +++ b/needles/gnome/apps/fonts/gnome_button_legal.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 353, + "ypos": 636, + "width": 48, + "height": 25, + "type": "match" + } + ], + "properties": [], + "tags": [ + "gnome_button_legal" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/gnome_button_legal.png b/needles/gnome/apps/fonts/gnome_button_legal.png new file mode 100644 index 00000000..e4223454 Binary files /dev/null and b/needles/gnome/apps/fonts/gnome_button_legal.png differ diff --git a/needles/gnome/apps/fonts/gnome_button_website.json b/needles/gnome/apps/fonts/gnome_button_website.json new file mode 100644 index 00000000..97390a92 --- /dev/null +++ b/needles/gnome/apps/fonts/gnome_button_website.json @@ -0,0 +1,15 @@ +{ + "area": [ + { + "xpos": 355, + "ypos": 437, + "width": 59, + "height": 22, + "type": "match" + } + ], + "properties": [], + "tags": [ + "gnome_button_website" + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/gnome_button_website.png b/needles/gnome/apps/fonts/gnome_button_website.png new file mode 100644 index 00000000..96b4a07b Binary files /dev/null and b/needles/gnome/apps/fonts/gnome_button_website.png differ diff --git a/needles/gnome/apps/fonts/gnome_icon_info.json b/needles/gnome/apps/fonts/gnome_icon_info.json new file mode 100644 index 00000000..57dd828d --- /dev/null +++ b/needles/gnome/apps/fonts/gnome_icon_info.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "gnome_icon_info" + ], + "area": [ + { + "xpos": 951, + "ypos": 45, + "width": 22, + "height": 22, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/gnome_icon_info.png b/needles/gnome/apps/fonts/gnome_icon_info.png new file mode 100644 index 00000000..d5f6fc2d Binary files /dev/null and b/needles/gnome/apps/fonts/gnome_icon_info.png differ diff --git a/needles/gnome/apps/fonts/gnome_icon_search.json b/needles/gnome/apps/fonts/gnome_icon_search.json new file mode 100644 index 00000000..3b79011e --- /dev/null +++ b/needles/gnome/apps/fonts/gnome_icon_search.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "gnome_icon_search" + ], + "area": [ + { + "xpos": 9, + "ypos": 42, + "width": 30, + "height": 27, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/gnome/apps/fonts/gnome_icon_search.png b/needles/gnome/apps/fonts/gnome_icon_search.png new file mode 100644 index 00000000..5814a8f3 Binary files /dev/null and b/needles/gnome/apps/fonts/gnome_icon_search.png differ diff --git a/templates.fif.json b/templates.fif.json index 71da2711..b1cb1836 100644 --- a/templates.fif.json +++ b/templates.fif.json @@ -1132,6 +1132,22 @@ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%" } }, + "fonts": { + "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/fonts", + "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%" + } + }, "help_viewer": { "profiles": { "fedora-Silverblue-dvd_ostree-iso-ppc64le-*-ppc64le": 50, diff --git a/tests/applications/fonts/aaa_setup.pm b/tests/applications/fonts/aaa_setup.pm new file mode 100644 index 00000000..c1ab2ba6 --- /dev/null +++ b/tests/applications/fonts/aaa_setup.pm @@ -0,0 +1,28 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will start Fonts and save a milestone for the +# subsequent tests. + +sub run { + my $self = shift; + + # Start the application + menu_launch_type("fonts"); + # Check that is started + assert_screen 'apps_run_fonts'; + + # Fullsize the window. + send_key("super-up"); + wait_still_screen(2); +} + +sub test_flags { + return {fatal => 1, milestone => 1}; +} + +1; + +# vim: set sw=4 et: diff --git a/tests/applications/fonts/about.pm b/tests/applications/fonts/about.pm new file mode 100644 index 00000000..36439328 --- /dev/null +++ b/tests/applications/fonts/about.pm @@ -0,0 +1,42 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will examine that the About dialogue +# works as expected. + +sub run { + my $self = shift; + # Click on the Info icon in the upper right corner. + assert_and_click("gnome_icon_info"); + # Check that the correct font is shown. + assert_screen("fonts_about_shown"); + # Click on Credits to see them. + assert_and_click("gnome_button_credits"); + + # Check that Credits are shown + assert_screen("fonts_credits_shown"); + # Return to previous screen + send_key("esc"); + + # Click on Legal to see legal info. + assert_and_click("gnome_button_legal"); + # Check that Credits are shown + assert_screen("fonts_legal_shown"); + # Return to previous screen + send_key("esc"); + + # Check that a project website can be reached. + assert_and_click("gnome_button_website"); + # Check that the website has been opened + assert_screen("fonts_website_opened"); +} + +sub test_flags { + return {always_rollback => 1}; +} + +1; + +# vim: set sw=4 et: diff --git a/tests/applications/fonts/info.pm b/tests/applications/fonts/info.pm new file mode 100644 index 00000000..b4b819ac --- /dev/null +++ b/tests/applications/fonts/info.pm @@ -0,0 +1,31 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will show info for the Cantarell font +# that should be the among those installed by default. + +sub run { + my $self = shift; + # Send the TAB key until the Cantarell font is found. + send_key_until_needlematch("fonts_cantarell_font", "tab", 30, 1); + # Click on the icon + click_lastmatch(); + # Check that the correct font is shown. + assert_screen("fonts_cantarell_shown"); + # Check that various sizes are shown. + assert_screen("fonts_cantarell_sizes"); + # Click on Info to get more information. + assert_and_click("gnome_button_info"); + # Check for various information on that page. + assert_screen("fonts_cantarell_info"); +} + +sub test_flags { + return {always_rollback => 1}; +} + +1; + +# vim: set sw=4 et: diff --git a/tests/applications/fonts/install.pm b/tests/applications/fonts/install.pm new file mode 100644 index 00000000..acdfb39e --- /dev/null +++ b/tests/applications/fonts/install.pm @@ -0,0 +1,33 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This will try to install the selected Cantarell +# font that is installable, but not installed. + +sub run { + my $self = shift; + # Send the TAB key until the Cantarell font is found. + send_key_until_needlematch("fonts_c059_font", "tab", 30, 1); + click_lastmatch(); + # Check that the correct font is shown. + assert_screen("fonts_c059_shown"); + # Click on the Install button. + assert_and_click("gnome_button_install"); + # Because it seems that the font installation does + # not work as expected and this has been reported + # as https://gitlab.gnome.org/GNOME/gnome-font-viewer/-/issues/64 + # we will only softfail when this happens. + unless (check_screen("fonts_c059_installed", timeout => 120)) { + record_soft_failure("The installation seems to not have fully completed, see https://gitlab.gnome.org/GNOME/gnome-font-viewer/-/issues/64."); + } +} + +sub test_flags { + return {always_rollback => 1}; +} + +1; + +# vim: set sw=4 et: diff --git a/tests/applications/fonts/screenshot.json b/tests/applications/fonts/screenshot.json new file mode 100644 index 00000000..553619e1 --- /dev/null +++ b/tests/applications/fonts/screenshot.json @@ -0,0 +1,15 @@ +{ + "properties": [], + "tags": [ + "fonts_c059_font" + ], + "area": [ + { + "xpos": 55, + "ypos": 105, + "width": 170, + "height": 155, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/tests/applications/fonts/search.pm b/tests/applications/fonts/search.pm new file mode 100644 index 00000000..d9c712a1 --- /dev/null +++ b/tests/applications/fonts/search.pm @@ -0,0 +1,27 @@ +use base "installedtest"; +use strict; +use testapi; +use utils; + +# This script will try the Search dialogue to look for +# a certain font. + +sub run { + my $self = shift; + # Click on the Search icon + assert_and_click("gnome_icon_search"); + wait_still_screen(2); + # Type the name of the font + type_very_safely("Liberation Serif"); + # Check that the Liberation Serif fonts + # have been found. + assert_screen("fonts_liberation_font_found"); +} + +sub test_flags { + return {always_rollback => 1}; +} + +1; + +# vim: set sw=4 et: