[gtk+] Add more icon theme tests



commit a6f1f8dacfa831d7940a276a576b53472f67a6f9
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Jun 18 18:19:39 2014 -0400

    Add more icon theme tests
    
    This test checks various directory size behaviours, with and
    without the FORCE_SIZE flag.

 testsuite/gtk/icons/15/size-test.png    |  Bin 0 -> 296 bytes
 testsuite/gtk/icons/16-22/size-test.png |  Bin 0 -> 437 bytes
 testsuite/gtk/icons/25+/size-test.svg   |   87 +++++++++++++++++++++++++++++++
 testsuite/gtk/icons/35+/size-test.svg   |   87 +++++++++++++++++++++++++++++++
 testsuite/gtk/icons/index.theme         |   27 +++++++++-
 testsuite/gtk/icontheme.c               |   47 +++++++++++++++++
 6 files changed, 247 insertions(+), 1 deletions(-)
---
diff --git a/testsuite/gtk/icons/15/size-test.png b/testsuite/gtk/icons/15/size-test.png
new file mode 100644
index 0000000..a4061a5
Binary files /dev/null and b/testsuite/gtk/icons/15/size-test.png differ
diff --git a/testsuite/gtk/icons/16-22/size-test.png b/testsuite/gtk/icons/16-22/size-test.png
new file mode 100644
index 0000000..fed0c26
Binary files /dev/null and b/testsuite/gtk/icons/16-22/size-test.png differ
diff --git a/testsuite/gtk/icons/25+/size-test.svg b/testsuite/gtk/icons/25+/size-test.svg
new file mode 100644
index 0000000..ce0bbe1
--- /dev/null
+++ b/testsuite/gtk/icons/25+/size-test.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="30"
+   height="30"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="size-test.svg">
+  <defs
+     id="defs4" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="17.515478"
+     inkscape:cx="11.899233"
+     inkscape:cy="19.702198"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="872"
+     inkscape:window-height="724"
+     inkscape:window-x="39"
+     inkscape:window-y="66"
+     inkscape:window-maximized="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1022.3622)">
+    <text
+       xml:space="preserve"
+       
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
+       x="2.3993642"
+       y="1044.8604"
+       id="text2985"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan2987"
+         x="2.3993642"
+         y="1044.8604">30</tspan></text>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot2989"
+       
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"><flowRegion
+         id="flowRegion2991"><rect
+           id="rect2993"
+           width="562.85712"
+           height="674.28571"
+           x="182.85715"
+           y="375.21933" /></flowRegion><flowPara
+         id="flowPara2995"></flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot2997"
+       
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"><flowRegion
+         id="flowRegion2999"><rect
+           id="rect3001"
+           width="105.71429"
+           height="62.857143"
+           x="245.71428"
+           y="326.64789" /></flowRegion><flowPara
+         id="flowPara3003"></flowPara></flowRoot>  </g>
+</svg>
diff --git a/testsuite/gtk/icons/35+/size-test.svg b/testsuite/gtk/icons/35+/size-test.svg
new file mode 100644
index 0000000..e601993
--- /dev/null
+++ b/testsuite/gtk/icons/35+/size-test.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="40"
+   height="40"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="size-test.svg">
+  <defs
+     id="defs4" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="12.385313"
+     inkscape:cx="11.899233"
+     inkscape:cy="19.702198"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1080"
+     inkscape:window-height="734"
+     inkscape:window-x="39"
+     inkscape:window-y="66"
+     inkscape:window-maximized="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-1012.3622)">
+    <text
+       xml:space="preserve"
+       
style="font-size:25px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
+       x="4.0949211"
+       y="1041.1464"
+       id="text2985"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan3043"
+         x="4.0949211"
+         y="1041.1464">40</tspan></text>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot2989"
+       
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"><flowRegion
+         id="flowRegion2991"><rect
+           id="rect2993"
+           width="562.85712"
+           height="674.28571"
+           x="182.85715"
+           y="375.21933" /></flowRegion><flowPara
+         id="flowPara2995"></flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot2997"
+       
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"><flowRegion
+         id="flowRegion2999"><rect
+           id="rect3001"
+           width="105.71429"
+           height="62.857143"
+           x="245.71428"
+           y="326.64789" /></flowRegion><flowPara
+         id="flowPara3003"></flowPara></flowRoot>  </g>
+</svg>
diff --git a/testsuite/gtk/icons/index.theme b/testsuite/gtk/icons/index.theme
index 20c53bb..dbe538c 100644
--- a/testsuite/gtk/icons/index.theme
+++ b/testsuite/gtk/icons/index.theme
@@ -3,7 +3,7 @@ Name=Icons
 Comment=Testing of the Icon theme code
 Example=16x16/simple.png
 
-Directories=16x16,16x16s,32x32,32x32s,scalable
+Directories=16x16,16x16s,32x32,32x32s,scalable,15,16-22,25+,35+
 
 [16x16]
 Context=16x16 icons
@@ -35,3 +35,28 @@ Type=Scalable
 Size=128
 MinSize=1
 MaxSize=256
+
+[15]
+Context=none
+Type=Fixed
+Size=15
+
+[16-22]
+Context=none
+Type=Threshold
+Size=19
+Threshold=3
+
+[25+]
+Context=none
+Type=Scalable
+Size=30
+MinSize=25
+MaxSize=35
+
+[35+]
+Context=none
+Type=Scalable
+Size=40
+MinSize=35
+MaxSize=1000
diff --git a/testsuite/gtk/icontheme.c b/testsuite/gtk/icontheme.c
index cef4ca8..f57d5aa 100644
--- a/testsuite/gtk/icontheme.c
+++ b/testsuite/gtk/icontheme.c
@@ -484,6 +484,52 @@ test_builtin (void)
   assert_icon_lookup_size ("gtk-caps-lock-warning", 30, GTK_ICON_LOOKUP_USE_BUILTIN, NULL, 30);
 }
 
+static void
+test_size (void)
+{
+  assert_icon_lookup_size ("size-test", 12, 0, "/icons/15/size-test.png", 15);
+  assert_icon_lookup_size ("size-test", 13, 0, "/icons/15/size-test.png", 15);
+  assert_icon_lookup_size ("size-test", 14, 0, "/icons/15/size-test.png", 15);
+  assert_icon_lookup_size ("size-test", 15, 0, "/icons/15/size-test.png", 15);
+  assert_icon_lookup_size ("size-test", 16, 0, "/icons/16-22/size-test.png", 19);
+  assert_icon_lookup_size ("size-test", 17, 0, "/icons/16-22/size-test.png", 19);
+  assert_icon_lookup_size ("size-test", 18, 0, "/icons/16-22/size-test.png", 19);
+  assert_icon_lookup_size ("size-test", 19, 0, "/icons/16-22/size-test.png", 19);
+  //assert_icon_lookup_size ("size-test", 20, 0, "/icons/16-22/size-test.png", 19);
+  //assert_icon_lookup_size ("size-test", 21, 0, "/icons/16-22/size-test.png", 19);
+  //assert_icon_lookup_size ("size-test", 22, 0, "/icons/16-22/size-test.png", 19);
+  assert_icon_lookup_size ("size-test", 23, 0, "/icons/25+/size-test.svg", 23);
+  assert_icon_lookup_size ("size-test", 24, 0, "/icons/25+/size-test.svg", 24);
+  assert_icon_lookup_size ("size-test", 25, 0, "/icons/25+/size-test.svg", 25);
+  assert_icon_lookup_size ("size-test", 28, 0, "/icons/25+/size-test.svg", 28);
+  //assert_icon_lookup_size ("size-test", 31, 0, "/icons/25+/size-test.svg", 31);
+  //assert_icon_lookup_size ("size-test", 34, 0, "/icons/25+/size-test.svg", 34);
+  assert_icon_lookup_size ("size-test", 37, 0, "/icons/35+/size-test.svg", 37);
+  assert_icon_lookup_size ("size-test", 40, 0, "/icons/35+/size-test.svg", 40);
+  assert_icon_lookup_size ("size-test", 45, 0, "/icons/35+/size-test.svg", 45);
+
+  assert_icon_lookup_size ("size-test", 12, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/15/size-test.png", 12);
+  assert_icon_lookup_size ("size-test", 13, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/15/size-test.png", 13);
+  assert_icon_lookup_size ("size-test", 14, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/15/size-test.png", 14);
+  assert_icon_lookup_size ("size-test", 15, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/15/size-test.png", 15);
+  assert_icon_lookup_size ("size-test", 16, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 16);
+  assert_icon_lookup_size ("size-test", 17, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 17);
+  assert_icon_lookup_size ("size-test", 18, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 18);
+  assert_icon_lookup_size ("size-test", 19, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 19);
+  //assert_icon_lookup_size ("size-test", 20, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 20);
+  //assert_icon_lookup_size ("size-test", 21, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 21);
+  //assert_icon_lookup_size ("size-test", 22, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/16-22/size-test.png", 22);
+  assert_icon_lookup_size ("size-test", 23, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/25+/size-test.svg", 23);
+  assert_icon_lookup_size ("size-test", 24, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/25+/size-test.svg", 24);
+  assert_icon_lookup_size ("size-test", 25, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/25+/size-test.svg", 25);
+  assert_icon_lookup_size ("size-test", 28, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/25+/size-test.svg", 28);
+  //assert_icon_lookup_size ("size-test", 31, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/25+/size-test.svg", 31);
+  //assert_icon_lookup_size ("size-test", 34, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/25+/size-test.svg", 34);
+  assert_icon_lookup_size ("size-test", 37, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/35+/size-test.svg", 37);
+  assert_icon_lookup_size ("size-test", 40, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/35+/size-test.svg", 40);
+  assert_icon_lookup_size ("size-test", 45, GTK_ICON_LOOKUP_FORCE_SIZE, "/icons/35+/size-test.svg", 45);
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -497,6 +543,7 @@ main (int argc, char *argv[])
   g_test_add_func ("/icontheme/rtl", test_rtl);
   g_test_add_func ("/icontheme/symbolic-single-size", test_symbolic_single_size);
   g_test_add_func ("/icontheme/svg-size", test_svg_size);
+  g_test_add_func ("/icontheme/size", test_size);
   g_test_add_func ("/icontheme/builtin", test_builtin);
 
   return g_test_run();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]