##// END OF EJS Templates
added mocked response
Ian Castleden -
Show More
@@ -73,11 +73,44 b' def test_retina_png():'
73 nt.assert_equal(md['height'], 1)
73 nt.assert_equal(md['height'], 1)
74
74
75 def test_embed_svg_url():
75 def test_embed_svg_url():
76 # 6.1kB of data
76 import gzip
77 from io import BytesIO
78 svg_data = b'<svg><circle x="0" y="0" r="1"/></svg>'
79 url = 'http://test.com/circle.svg'
80
81 gzip_svg = BytesIO()
82 with gzip.open(gzip_svg, 'wb') as fp:
83 fp.write(svg_data)
84 gzip_svg = gzip_svg.getvalue()
85
86 def mocked_urlopen(*args, **kwargs):
87 class MockResponse:
88 def __init__(self, svg):
89 self._svg_data = svg
90 self.headers = {'content-type': 'image/svg+xml'}
91
92 def read(self):
93 return self._svg_data
94
95 if args[0] == url:
96 return MockResponse(svg_data)
97 elif args[0] == url + 'z':
98 ret= MockResponse(gzip_svg)
99 ret.headers['content-encoding']= 'gzip'
100 return ret
101 return MockResponse(None)
102
103 with mock.patch('urllib.request.urlopen', side_effect=mocked_urlopen):
104 svg = display.SVG(url=url)
105 nt.assert_true(svg._repr_svg_().startswith('<svg'))
106 svg = display.SVG(url=url + 'z')
107 nt.assert_true(svg._repr_svg_().startswith('<svg'))
108
109 # do it for real: 6.1kB of data
77 url = "https://upload.wikimedia.org/wikipedia/commons/3/30/Vector-based_example.svg"
110 url = "https://upload.wikimedia.org/wikipedia/commons/3/30/Vector-based_example.svg"
78 svg = display.SVG(url=url)
111 svg = display.SVG(url=url)
79 nt.assert_true(svg._repr_svg_().startswith('<svg '))
112 nt.assert_true(svg._repr_svg_().startswith('<svg'))
80
113
81 def test_retina_jpeg():
114 def test_retina_jpeg():
82 here = os.path.dirname(__file__)
115 here = os.path.dirname(__file__)
83 img = display.Image(os.path.join(here, "2x2.jpg"), retina=True)
116 img = display.Image(os.path.join(here, "2x2.jpg"), retina=True)
General Comments 0
You need to be logged in to leave comments. Login now