From 4f81dc1eafc13595841ab404dc8070909500dafa Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 4 May 2021 16:21:37 -0400 Subject: [PATCH] Fix the icon-effect-missing reftest This was comparing the included image-missing icon with the one in the current icontheme on the test system. Works fine as long as we don't change the icons (which we just did). To avoid this, set the icontheme to hicolor for this test, which does not have the image-missing icon, so we end up getting the builtin icon for both ui files. --- testsuite/reftests/icon-effect-missing.ref.ui | 1 + testsuite/reftests/icon-theme-hicolor.c | 35 +++++++++++++++++++ testsuite/reftests/meson.build | 1 + 3 files changed, 37 insertions(+) create mode 100644 testsuite/reftests/icon-theme-hicolor.c diff --git a/testsuite/reftests/icon-effect-missing.ref.ui b/testsuite/reftests/icon-effect-missing.ref.ui index 827aaa9dcb..ea916ba8a6 100644 --- a/testsuite/reftests/icon-effect-missing.ref.ui +++ b/testsuite/reftests/icon-effect-missing.ref.ui @@ -2,6 +2,7 @@ 0 + diff --git a/testsuite/reftests/icon-theme-hicolor.c b/testsuite/reftests/icon-theme-hicolor.c new file mode 100644 index 0000000000..3934fd8cbe --- /dev/null +++ b/testsuite/reftests/icon-theme-hicolor.c @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2021 Red Hat, Inc + * + * Author: + * Matthias Clasen + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library. If not, see . + */ + +#include "config.h" + +#include + + +G_MODULE_EXPORT void +set_icon_theme_hicolor (void) +{ + GtkSettings *settings; + + g_test_message ("Attention: setting icon-theme to hicolor"); + + settings = gtk_settings_get_for_display (gdk_display_get_default ()); + g_object_set (settings, "gtk-icon-theme-name", "hicolor", NULL); +} diff --git a/testsuite/reftests/meson.build b/testsuite/reftests/meson.build index f9b1f97eba..a8ef4b48bc 100644 --- a/testsuite/reftests/meson.build +++ b/testsuite/reftests/meson.build @@ -23,6 +23,7 @@ libreftest = library('reftest', 'textview-border-windows.c', 'textview-tags.c', 'animation-direction.c', + 'icon-theme-hicolor.c', ], link_with: libgtkreftestprivate, c_args: reftest_cflags,