aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUjjwal Verma <ujjwalverma1111@gmail.com>2017-06-25 01:05:20 +0530
committerUjjwal Verma <ujjwalverma1111@gmail.com>2017-06-25 01:05:20 +0530
commit8ca29679dfc9248d5c867b566df67213d4ab0951 (patch)
tree48af90817cdd49f9ff5ba8099afdf3196c4ce5e7
parente81144e26b35aea3e2a4293b256228581a44288a (diff)
downloadmitmproxy-8ca29679dfc9248d5c867b566df67213d4ab0951.tar.gz
mitmproxy-8ca29679dfc9248d5c867b566df67213d4ab0951.tar.bz2
mitmproxy-8ca29679dfc9248d5c867b566df67213d4ab0951.zip
Added test
-rw-r--r--mitmproxy/contentviews/image/image_parser.py11
-rw-r--r--test/mitmproxy/contentviews/image/test_image_parser.py23
-rw-r--r--test/mitmproxy/contentviews/image/test_view.py3
3 files changed, 30 insertions, 7 deletions
diff --git a/mitmproxy/contentviews/image/image_parser.py b/mitmproxy/contentviews/image/image_parser.py
index 46549b1b..aa6f8450 100644
--- a/mitmproxy/contentviews/image/image_parser.py
+++ b/mitmproxy/contentviews/image/image_parser.py
@@ -91,11 +91,12 @@ def parse_ico(data: bytes) -> Metadata:
for i, image in enumerate(img.images):
parts.append(
(
- 'Image {}'.format(i), "Size: {} x {}\n "
- "Bits per pixel: {}\n "
- "PNG: {}".format(256 if not image.width else image.width,
- 256 if not image.height else image.height,
- image.bpp, image.is_png)
+ 'Image {}'.format(i+1), "Size: {} x {}\n"
+ "{: >18}Bits per pixel: {}\n"
+ "{: >18}PNG: {}".format(256 if not image.width else image.width,
+ 256 if not image.height else image.height,
+ '', image.bpp,
+ '', image.is_png)
)
)
diff --git a/test/mitmproxy/contentviews/image/test_image_parser.py b/test/mitmproxy/contentviews/image/test_image_parser.py
index 3cb44ca6..fdc72165 100644
--- a/test/mitmproxy/contentviews/image/test_image_parser.py
+++ b/test/mitmproxy/contentviews/image/test_image_parser.py
@@ -167,3 +167,26 @@ def test_parse_gif(filename, metadata):
def test_parse_jpeg(filename, metadata):
with open(tutils.test_data.path(filename), 'rb') as f:
assert metadata == image_parser.parse_jpeg(f.read())
+
+
+@pytest.mark.parametrize("filename, metadata", {
+ "mitmproxy/data/image.ico": [
+ ('Format', 'ICO'),
+ ('Number of images', '3'),
+ ('Image 1', "Size: {} x {}\n"
+ "{: >18}Bits per pixel: {}\n"
+ "{: >18}PNG: {}".format(48, 48, '', 24, '', False)
+ ),
+ ('Image 2', "Size: {} x {}\n"
+ "{: >18}Bits per pixel: {}\n"
+ "{: >18}PNG: {}".format(32, 32, '', 24, '', False)
+ ),
+ ('Image 3', "Size: {} x {}\n"
+ "{: >18}Bits per pixel: {}\n"
+ "{: >18}PNG: {}".format(16, 16, '', 24, '', False)
+ )
+ ]
+}.items())
+def test_ico(filename, metadata):
+ with open(tutils.test_data.path(filename), 'rb') as f:
+ assert metadata == image_parser.parse_ico(f.read())
diff --git a/test/mitmproxy/contentviews/image/test_view.py b/test/mitmproxy/contentviews/image/test_view.py
index 34f655a1..6da5b1d0 100644
--- a/test/mitmproxy/contentviews/image/test_view.py
+++ b/test/mitmproxy/contentviews/image/test_view.py
@@ -9,8 +9,7 @@ def test_view_image():
"mitmproxy/data/image.png",
"mitmproxy/data/image.gif",
"mitmproxy/data/all.jpeg",
- # https://bugs.python.org/issue21574
- # "mitmproxy/data/image.ico",
+ "mitmproxy/data/image.ico",
]:
with open(tutils.test_data.path(img), "rb") as f:
viewname, lines = v(f.read())