From b6f8ea46cf021fab123e3fbdc26a1b1c5714f42c Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Fri, 27 May 2022 16:42:19 -0700
Subject: [PATCH] Added test for SVG class style support
---
test/main.c | 17 +++++++++++++++++
test/svg-class.bmp | Bin 0 -> 27018 bytes
test/svg-class.svg | 30 ++++++++++++++++++++++++++++++
3 files changed, 47 insertions(+)
create mode 100644 test/svg-class.bmp
create mode 100755 test/svg-class.svg
diff --git a/test/main.c b/test/main.c
index 3946ff38..f39fb624 100644
--- a/test/main.c
+++ b/test/main.c
@@ -370,6 +370,23 @@ static const Format formats[] =
SDL_TRUE,
#else
SDL_FALSE,
+#endif
+ SDL_FALSE, /* can save */
+ IMG_isSVG,
+ IMG_LoadSVG_RW,
+ },
+ {
+ "SVG-class",
+ "svg-class.svg",
+ "svg-class.bmp",
+ 82,
+ 82,
+ 0, /* lossless? */
+ 0, /* no initialization */
+#ifdef LOAD_SVG
+ SDL_TRUE,
+#else
+ SDL_FALSE,
#endif
SDL_FALSE, /* can save */
IMG_isSVG,
diff --git a/test/svg-class.bmp b/test/svg-class.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..8dfc60a8635523ad73f32e70b12c94f6c6bfbf2e
GIT binary patch
literal 27018
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
NKfvtA!L7Hl_kW*rY>@x}
literal 0
HcmV?d00001
diff --git a/test/svg-class.svg b/test/svg-class.svg
new file mode 100755
index 00000000..0bd46b6b
--- /dev/null
+++ b/test/svg-class.svg
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
+ <!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
+ <!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
+ <!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
+ <!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
+ <!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
+ <!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
+ <!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
+ <!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
+]>
+<svg version="1.1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="-2 -1 82 82"
+ style="enable-background:new 0 0 78.6 79.7;" xml:space="preserve">
+<style type="text/css">
+ .st0{fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:10;}
+ .st1{fill:none;stroke:#FFFFFF;stroke-width:3;stroke-miterlimit:10;}
+</style>
+<switch>
+ <g i:extraneous="self">
+ <g id="Layer_2">
+ <path class="st0" d="M39.8,79.1c-21.1,0-38.3-17.2-38.3-38.3S18.7,2.5,39.8,2.5s38.3,17.2,38.3,38.3S60.9,79.1,39.8,79.1z"/>
+ </g>
+ <g id="Layer_1">
+ <path class="st1" d="M38.8,77.1c-21.1,0-38.3-17.2-38.3-38.3S17.7,0.5,38.8,0.5s38.3,17.2,38.3,38.3S59.9,77.1,38.8,77.1z"/>
+ </g>
+ </g>
+</switch>
+</svg>