diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/test_contentview.py | 110 | ||||
| -rw-r--r-- | test/test_dump.py | 2 | 
2 files changed, 46 insertions, 66 deletions
diff --git a/test/test_contentview.py b/test/test_contentview.py index 2089b3ea..97608520 100644 --- a/test/test_contentview.py +++ b/test/test_contentview.py @@ -1,8 +1,5 @@  from libmproxy.exceptions import ContentViewException  from netlib.http import Headers - -import sys -  import netlib.utils  from netlib import encoding @@ -25,66 +22,61 @@ class TestContentView:      def test_view_auto(self):          v = cv.ViewAuto()          f = v( -            Headers(),              "foo", -            1000 +            headers=Headers()          )          assert f[0] == "Raw"          f = v( -            Headers(content_type="text/html"),              "<html></html>", -            1000 +            headers=Headers(content_type="text/html")          )          assert f[0] == "HTML"          f = v( -            Headers(content_type="text/flibble"),              "foo", -            1000 +            headers=Headers(content_type="text/flibble")          )          assert f[0] == "Raw"          f = v( -            Headers(content_type="text/flibble"),              "<xml></xml>", -            1000 +            headers=Headers(content_type="text/flibble")          )          assert f[0].startswith("XML")      def test_view_urlencoded(self):          d = netlib.utils.urlencode([("one", "two"), ("three", "four")])          v = cv.ViewURLEncoded() -        assert v([], d, 100) +        assert v(d)          d = netlib.utils.urlencode([("adsfa", "")])          v = cv.ViewURLEncoded() -        assert v([], d, 100) +        assert v(d)      def test_view_html(self):          v = cv.ViewHTML()          s = "<html><br><br></br><p>one</p></html>" -        assert v([], s, 1000) +        assert v(s)          s = "gobbledygook" -        assert not v([], s, 1000) +        assert not v(s)      def test_view_html_outline(self):          v = cv.ViewHTMLOutline()          s = "<html><br><br></br><p>one</p></html>" -        assert v([], s, 1000) +        assert v(s)      def test_view_json(self):          cv.VIEW_CUTOFF = 100          v = cv.ViewJSON() -        assert v([], "{}", 1000) -        assert not v([], "{", 1000) -        assert v([], "[" + ",".join(["0"] * cv.VIEW_CUTOFF) + "]", 1000) -        assert v([], "[1, 2, 3, 4, 5]", 5) +        assert v("{}") +        assert not v("{") +        assert v("[1, 2, 3, 4, 5]")      def test_view_xml(self):          v = cv.ViewXML() -        assert v([], "<foo></foo>", 1000) -        assert not v([], "<foo>", 1000) +        assert v("<foo></foo>") +        assert not v("<foo>")          s = """<?xml version="1.0" encoding="UTF-8"?>              <?xml-stylesheet title="XSL_formatting"?>              <rss @@ -93,17 +85,17 @@ class TestContentView:                  version="2.0">              </rss>          """ -        assert v([], s, 1000) +        assert v(s)      def test_view_raw(self):          v = cv.ViewRaw() -        assert v([], "foo", 1000) +        assert v("foo")      def test_view_javascript(self):          v = cv.ViewJavaScript() -        assert v([], "[1, 2, 3]", 100) -        assert v([], "[1, 2, 3", 100) -        assert v([], "function(a){[1, 2, 3]}", 100) +        assert v("[1, 2, 3]") +        assert v("[1, 2, 3") +        assert v("function(a){[1, 2, 3]}")      def test_view_css(self):          v = cv.ViewCSS() @@ -111,14 +103,14 @@ class TestContentView:          with open(tutils.test_data.path('data/1.css'), 'r') as fp:              fixture_1 = fp.read() -        result = v([], 'a', 100) +        result = v('a')          if cssutils:              assert len(list(result[1])) == 0          else:              assert len(list(result[1])) == 1 -        result = v([], fixture_1, 100) +        result = v(fixture_1)          if cssutils:              assert len(list(result[1])) > 1 @@ -127,23 +119,23 @@ class TestContentView:      def test_view_hex(self):          v = cv.ViewHex() -        assert v([], "foo", 1000) +        assert v("foo")      def test_view_image(self):          v = cv.ViewImage()          p = tutils.test_data.path("data/image.png") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read())          p = tutils.test_data.path("data/image.gif") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read())          p = tutils.test_data.path("data/image-err1.jpg") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read())          p = tutils.test_data.path("data/image.ico") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read()) -        assert not v([], "flibble", sys.maxsize) +        assert not v("flibble")      def test_view_multipart(self):          view = cv.ViewMultipart() @@ -155,42 +147,36 @@ Larry  --AaB03x          """.strip()          h = Headers(content_type="multipart/form-data; boundary=AaB03x") -        assert view(h, v, 1000) +        assert view(v, headers=h)          h = Headers() -        assert not view(h, v, 1000) +        assert not view(v, headers=h)          h = Headers(content_type="multipart/form-data") -        assert not view(h, v, 1000) +        assert not view(v, headers=h)          h = Headers(content_type="unparseable") -        assert not view(h, v, 1000) +        assert not view(v, headers=h)      def test_get_content_view(self):          r = cv.get_content_view(              cv.get("Raw"), -            Headers(content_type="application/json"),              "[1, 2, 3]", -            1000, -            False +            headers=Headers(content_type="application/json")          )          assert "Raw" in r[0]          r = cv.get_content_view(              cv.get("Auto"), -            Headers(content_type="application/json"),              "[1, 2, 3]", -            1000, -            False +            headers=Headers(content_type="application/json")          )          assert r[0] == "JSON"          r = cv.get_content_view(              cv.get("Auto"), -            Headers(content_type="application/json"),              "[1, 2", -            1000, -            False +            headers=Headers(content_type="application/json")          )          assert "Raw" in r[0] @@ -198,34 +184,28 @@ Larry              ContentViewException,              cv.get_content_view,              cv.get("AMF"), -            Headers(),              "[1, 2", -            1000, -            False +            headers=Headers()          )          r = cv.get_content_view(              cv.get("Auto"), -            Headers( +            encoding.encode('gzip', "[1, 2, 3]"), +            headers=Headers(                  content_type="application/json",                  content_encoding="gzip" -            ), -            encoding.encode('gzip', "[1, 2, 3]"), -            1000, -            False +            )          )          assert "decoded gzip" in r[0]          assert "JSON" in r[0]          r = cv.get_content_view(              cv.get("XML"), -            Headers( +            encoding.encode('gzip', "[1, 2, 3]"), +            headers=Headers(                  content_type="application/json",                  content_encoding="gzip" -            ), -            encoding.encode('gzip', "[1, 2, 3]"), -            1000, -            False +            )          )          assert "decoded gzip" in r[0]          assert "Raw" in r[0] @@ -236,22 +216,22 @@ if pyamf:          v = cv.ViewAMF()          p = tutils.test_data.path("data/amf01") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read())          p = tutils.test_data.path("data/amf02") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read())      def test_view_amf_response():          v = cv.ViewAMF()          p = tutils.test_data.path("data/amf03") -        assert v([], file(p, "rb").read(), sys.maxsize) +        assert v(file(p, "rb").read())  if cv.ViewProtobuf.is_available():      def test_view_protobuf_request():          v = cv.ViewProtobuf()          p = tutils.test_data.path("data/protobuf01") -        content_type, output = v([], file(p, "rb").read(), sys.maxsize) +        content_type, output = v(file(p, "rb").read())          assert content_type == "Protobuf"          assert output[0].text == '1: "3bbc333c-e61c-433b-819a-0b9a8cc103b8"' diff --git a/test/test_dump.py b/test/test_dump.py index 88f1a6fd..29931759 100644 --- a/test/test_dump.py +++ b/test/test_dump.py @@ -52,7 +52,7 @@ def test_strfuncs():  @mock.patch("libmproxy.contentviews.get_content_view")  def test_contentview(get_content_view): -    get_content_view.side_effect = ContentViewException(""), ("x", []) +    get_content_view.side_effect = ContentViewException(""), ("x", iter([]))      o = dump.Options(flow_detail=4, verbosity=3)      m = dump.DumpMaster(None, o, StringIO())  | 
