Example #1
0
 def test_color_style(self):
     svg = ElementTree.fromstring(
         XML_HEADER + b'<svg width="10" height="10">' + b'<g sTYle="strOKe: #123; fILL: none;"></g></svg>'
     )
     with self.settings(SVG_COLORS={"white": "#fff", "green": "#0f5"}):
         result = svg_util.color_icon(svg)
         self.assertEqual(2, len(result))
         self.assertTrue("white" in result)
         self.assertTrue("green" in result)
         self.assertTrue(b'sTYle="stroke: #fff; fILL: none;"' in ElementTree.tostring(result["white"]))
 def test_color_style(self):
     svg = ElementTree.fromstring(
         XML_HEADER + b'<svg width="10" height="10">' +
         b'<g sTYle="strOKe: #123; fILL: none;"></g></svg>')
     with self.settings(SVG_COLORS={'white': '#fff', 'green': '#0f5'}):
         result = svg_util.color_icon(svg)
         self.assertEqual(2, len(result))
         self.assertTrue('white' in result)
         self.assertTrue('green' in result)
         self.assertTrue(b'sTYle="stroke: #fff; fILL: none;"' in
                         ElementTree.tostring(result['white']))
Example #3
0
 def test_color_stroke(self):
     svg = ElementTree.fromstring(
         XML_HEADER + b'<svg width="10" height="10">' + b'<g stroke="#000" fill="noNE"></g></svg>'
     )
     with self.settings(SVG_COLORS={"white": "#fff", "green": "#0f5"}):
         result = svg_util.color_icon(svg)
         self.assertEqual(2, len(result))
         self.assertTrue("white" in result)
         self.assertTrue("green" in result)
         self.assertTrue(b'fill="noNE"' in ElementTree.tostring(result["white"]))
         self.assertFalse(b'stroke="#0f5"' in ElementTree.tostring(result["white"]))
         self.assertTrue(b'stroke="#0f5"' in ElementTree.tostring(result["green"]))
 def test_color_embedded_stylesheet(self):
     svg = ElementTree.fromstring(
         XML_HEADER + b'<svg width="10" height="10">' +
         b'<stYLe>\n.some_class{\nfill:#123; STroke: grey;}\n</stYLe>\n' +
         b'<g class="some_class"></g></svg>')
     with self.settings(SVG_COLORS={'white': '#fff', 'green': '#0f5'}):
         result = svg_util.color_icon(svg)
         self.assertEqual(2, len(result))
         self.assertTrue('white' in result)
         self.assertTrue('green' in result)
         self.assertTrue(
             b'fill: #fff;' in ElementTree.tostring(result['white']))
         self.assertTrue(
             b'stroke: #0f5;' in ElementTree.tostring(result['green']))
Example #5
0
 def test_color_embedded_stylesheet(self):
     svg = ElementTree.fromstring(
         XML_HEADER
         + b'<svg width="10" height="10">'
         + b"<stYLe>\n.some_class{\nfill:#123; STroke: grey;}\n</stYLe>\n"
         + b'<g class="some_class"></g></svg>'
     )
     with self.settings(SVG_COLORS={"white": "#fff", "green": "#0f5"}):
         result = svg_util.color_icon(svg)
         self.assertEqual(2, len(result))
         self.assertTrue("white" in result)
         self.assertTrue("green" in result)
         self.assertTrue(b"fill: #fff;" in ElementTree.tostring(result["white"]))
         self.assertTrue(b"stroke: #0f5;" in ElementTree.tostring(result["green"]))
Example #6
0
 def save(self, *args, **kwargs):
     """Save other colors of the issue icon. We assume it is validated in
     the clean function"""
     if self.icon:
         xml = svg.validate_svg(self.icon.file.read())
         square = svg.make_square(xml)
         colors = svg.color_icon(square)
         super(Issue, self).save(*args, **kwargs)
         for key, content in colors.items():
             filename = self.icon_color(key)
             if self.icon.storage.exists(filename):
                 self.icon.storage.delete(filename)
             self.icon.storage.save(filename, svg.as_file(content))
     else:
         super(Issue, self).save(*args, **kwargs)
 def test_color_stroke(self):
     svg = ElementTree.fromstring(
         XML_HEADER + b'<svg width="10" height="10">' +
         b'<g stroke="#000" fill="noNE"></g></svg>')
     with self.settings(SVG_COLORS={'white': '#fff', 'green': '#0f5'}):
         result = svg_util.color_icon(svg)
         self.assertEqual(2, len(result))
         self.assertTrue('white' in result)
         self.assertTrue('green' in result)
         self.assertTrue(
             b'fill="noNE"' in ElementTree.tostring(result['white']))
         self.assertFalse(
             b'stroke="#0f5"' in ElementTree.tostring(result['white']))
         self.assertTrue(
             b'stroke="#0f5"' in ElementTree.tostring(result['green']))
Example #8
0
 def save(self, *args, **kwargs):
     """Save other colors of the issue icon. We assume it is validated in
     the clean function"""
     if self.icon:
         xml = svg.validate_svg(self.icon.file.read())
         square = svg.make_square(xml)
         colors = svg.color_icon(square)
         super(Issue, self).save(*args, **kwargs)
         for key, content in colors.items():
             filename = self.icon_color(key)
             if self.icon.storage.exists(filename):
                 self.icon.storage.delete(filename)
             self.icon.storage.save(filename, svg.as_file(content))
     else:
         super(Issue, self).save(*args, **kwargs)