aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Czub <chris.czub@gmail.com>2015-11-09 15:07:08 -0500
committerChris Czub <chris.czub@gmail.com>2015-11-13 15:08:52 -0500
commitd7239d665e6781d7b84ecfde3fd5d7d1831de284 (patch)
treebb5e64935957eb9ba7888f180b3c9466019e328e
parent82a90511bc61b4ed98cd7ff2455b79dec015c45f (diff)
downloadmitmproxy-d7239d665e6781d7b84ecfde3fd5d7d1831de284.tar.gz
mitmproxy-d7239d665e6781d7b84ecfde3fd5d7d1831de284.tar.bz2
mitmproxy-d7239d665e6781d7b84ecfde3fd5d7d1831de284.zip
Add new contentviews' content type mappings
-rw-r--r--libmproxy/contentviews.py10
-rw-r--r--test/test_contentview.py1
2 files changed, 11 insertions, 0 deletions
diff --git a/libmproxy/contentviews.py b/libmproxy/contentviews.py
index 8d5aadfc..aa2082d1 100644
--- a/libmproxy/contentviews.py
+++ b/libmproxy/contentviews.py
@@ -520,8 +520,18 @@ def add(obj):
if i.name == obj.name:
raise ContentViewException("Duplicate view: " + obj.name)
+ for prompt in view_prompts:
+ if prompt[1] == obj.prompt[1]:
+ raise ContentViewException("Duplicate view shortcut: " + obj.prompt[1])
+
views.append(obj)
+ for ct in obj.content_types:
+ l = content_types_map.setdefault(ct, [])
+ l.append(obj)
+
+ view_prompts.append(obj.prompt)
+
def get(name):
for i in views:
diff --git a/test/test_contentview.py b/test/test_contentview.py
index 68272fca..c1e437e4 100644
--- a/test/test_contentview.py
+++ b/test/test_contentview.py
@@ -217,6 +217,7 @@ Larry
tcv = TestContentView()
cv.add(tcv)
+ # repeated addition causes exception
tutils.raises(
ContentViewException,
cv.add,