aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Czub <chris.czub@gmail.com>2015-11-09 11:06:16 -0500
committerChris Czub <chris.czub@gmail.com>2015-11-13 15:07:56 -0500
commit82a90511bc61b4ed98cd7ff2455b79dec015c45f (patch)
treee17d9b76a94cfe44fecb48afb07ec1aa49d57de0
parentf62d564cfb29a77405f46a9b0930e73e92f5a472 (diff)
downloadmitmproxy-82a90511bc61b4ed98cd7ff2455b79dec015c45f.tar.gz
mitmproxy-82a90511bc61b4ed98cd7ff2455b79dec015c45f.tar.bz2
mitmproxy-82a90511bc61b4ed98cd7ff2455b79dec015c45f.zip
Add "add" ContentView method & test
-rw-r--r--libmproxy/contentviews.py8
-rw-r--r--test/test_contentview.py13
2 files changed, 21 insertions, 0 deletions
diff --git a/libmproxy/contentviews.py b/libmproxy/contentviews.py
index 9af08033..8d5aadfc 100644
--- a/libmproxy/contentviews.py
+++ b/libmproxy/contentviews.py
@@ -515,6 +515,14 @@ def get_by_shortcut(c):
return i
+def add(obj):
+ for i in views:
+ if i.name == obj.name:
+ raise ContentViewException("Duplicate view: " + obj.name)
+
+ views.append(obj)
+
+
def get(name):
for i in views:
if i.name == name:
diff --git a/test/test_contentview.py b/test/test_contentview.py
index 97608520..68272fca 100644
--- a/test/test_contentview.py
+++ b/test/test_contentview.py
@@ -210,6 +210,19 @@ Larry
assert "decoded gzip" in r[0]
assert "Raw" in r[0]
+ def test_add_cv(self):
+ class TestContentView(cv.View):
+ name = "test"
+
+ tcv = TestContentView()
+ cv.add(tcv)
+
+ tutils.raises(
+ ContentViewException,
+ cv.add,
+ tcv
+ )
+
if pyamf:
def test_view_amf_request():