From 45a64cd7d47fcc5a54f3f83c73eb1d88b9351160 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Thu, 12 Jun 2014 12:28:07 +0200 Subject: [PATCH] testsuite: Add a test for symbolic icons in specific sizes Check that loading symbolics works, even if the symbolic is only available in a fixed size. --- testsuite/gtk/Makefile.am | 1 + testsuite/gtk/icons/32x32/only32-symbolic.svg | 4 ++++ testsuite/gtk/icons/index.theme | 7 ++++++- testsuite/gtk/icontheme.c | 20 +++++++++++++++++++ 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 testsuite/gtk/icons/32x32/only32-symbolic.svg diff --git a/testsuite/gtk/Makefile.am b/testsuite/gtk/Makefile.am index 822e7b45d2..a0d6ee3e40 100644 --- a/testsuite/gtk/Makefile.am +++ b/testsuite/gtk/Makefile.am @@ -130,6 +130,7 @@ keyhash_SOURCES = \ test_icontheme = \ icons/16x16/simple.png \ + icons/32x32/only32-symbolic.svg \ icons/index.theme \ icons/scalable/everything-justregular.svg \ icons/scalable/everything-justrtl-rtl.svg \ diff --git a/testsuite/gtk/icons/32x32/only32-symbolic.svg b/testsuite/gtk/icons/32x32/only32-symbolic.svg new file mode 100644 index 0000000000..45b553cb11 --- /dev/null +++ b/testsuite/gtk/icons/32x32/only32-symbolic.svg @@ -0,0 +1,4 @@ + + + 32 + diff --git a/testsuite/gtk/icons/index.theme b/testsuite/gtk/icons/index.theme index 28e544aa59..cecd974868 100644 --- a/testsuite/gtk/icons/index.theme +++ b/testsuite/gtk/icons/index.theme @@ -3,13 +3,18 @@ Name=Icons Comment=Testing of the Icon theme code Example=16x16/simple.png -Directories=16x16,scalable +Directories=16x16,32x32,scalable [16x16] Context=16x16 icons Size=16 Type=Fixed +[32x32] +Context=32x32 icons +Size=32 +Type=Fixed + [scalable] Context=scalable icons Type=Scalable diff --git a/testsuite/gtk/icontheme.c b/testsuite/gtk/icontheme.c index c72d50d0a0..17fe6a04e2 100644 --- a/testsuite/gtk/icontheme.c +++ b/testsuite/gtk/icontheme.c @@ -405,6 +405,25 @@ test_rtl (void) "/icons/scalable/everything-justrtl-rtl.svg"); } +static void +test_symbolic_single_size (void) +{ + /* Check we properly load a symbolic icon from a sized directory */ + assert_icon_lookup ("only32-symbolic", + 32, + 0, + "/icons/32x32/only32-symbolic.svg"); + /* Check that we still properly load it even if a different size is requested */ + assert_icon_lookup ("only32-symbolic", + 16, + 0, + "/icons/32x32/only32-symbolic.svg"); + assert_icon_lookup ("only32-symbolic", + 128, + 0, + "/icons/32x32/only32-symbolic.svg"); +} + int main (int argc, char *argv[]) { @@ -416,6 +435,7 @@ main (int argc, char *argv[]) g_test_add_func ("/icontheme/force-symbolic", test_force_symbolic); g_test_add_func ("/icontheme/force-regular", test_force_regular); g_test_add_func ("/icontheme/rtl", test_rtl); + g_test_add_func ("/icontheme/symbolic-single-size", test_symbolic_single_size); return g_test_run(); }