Esempio n. 1
0
 def test_text(self):
     headers = Headers({b'content-type': [b'text/plain;charset=utf-8']})
     original = FakeResponse(200, headers, body=[b'\xe2\x98', b'\x83'])
     self.assertEqual(
         u'\u2603',
         self.successResultOf(_Response(original, None).text()),
     )
Esempio n. 2
0
 def test_text(self):
     headers = Headers({b'content-type': [b'text/plain;charset=utf-8']})
     original = FakeResponse(200, headers, body=[b'\xe2\x98', b'\x83'])
     self.assertEqual(
         u'\u2603',
         self.successResultOf(_Response(original, None).text()),
     )
Esempio n. 3
0
 def test_json_customized(self):
     original = FakeResponse(200,
                             Headers(),
                             body=[b'{"foo": ', b'1.0000000000000001}'])
     self.assertEqual(
         self.successResultOf(
             _Response(original, None).json(parse_float=Decimal))["foo"],
         Decimal("1.0000000000000001"))
Esempio n. 4
0
 def test_repr_content_type_missing(self):
     """
     A request with no Content-Type just displays an empty field.
     """
     original = FakeResponse(204, Headers(), body=[b''])
     self.assertEqual(
         "<treq.response._Response 204 '' 0 bytes>",
         repr(_Response(original, None)),
     )
Esempio n. 5
0
 def test_json_customized(self):
     original = FakeResponse(200, Headers(), body=[b'{"foo": ',
                                                   b'1.0000000000000001}'])
     self.assertEqual(
         self.successResultOf(_Response(original, None).json(
             parse_float=Decimal)
         )["foo"],
         Decimal("1.0000000000000001")
     )
Esempio n. 6
0
 def test_repr_content_type_missing(self):
     """
     A request with no Content-Type just displays an empty field.
     """
     original = FakeResponse(204, Headers(), body=[b''])
     self.assertEqual(
         "<treq.response._Response 204 '' 0 bytes>",
         repr(_Response(original, None)),
     )
Esempio n. 7
0
 def test_repr_content_type_hostile(self):
     """
     Garbage in the Content-Type still produces a reasonable representation.
     """
     headers = Headers({'Content-Type': [u'\u2e18', ' x/y']})
     original = FakeResponse(418, headers, body=[b''])
     self.assertEqual(
         r"<treq.response._Response 418 '\xe2\xb8\x98,  x/y' 0 bytes>",
         repr(_Response(original, None)),
     )
Esempio n. 8
0
 def test_repr_content_type_hostile(self):
     """
     Garbage in the Content-Type still produces a reasonable representation.
     """
     headers = Headers({'Content-Type': [u'\u2e18', ' x/y']})
     original = FakeResponse(418, headers, body=[b''])
     self.assertEqual(
         r"<treq.response._Response 418 '\xe2\xb8\x98,  x/y' 0 bytes>",
         repr(_Response(original, None)),
     )
Esempio n. 9
0
 def test_repr_unknown_length(self):
     """
     A HTTP 1.0 or chunked response displays an unknown length.
     """
     headers = Headers({'Content-Type': ['text/event-stream']})
     original = FakeResponse(200, headers)
     original.length = UNKNOWN_LENGTH
     self.assertEqual(
         "<treq.response._Response 200 'text/event-stream' unknown size>",
         repr(_Response(original, None)),
     )
Esempio n. 10
0
 def test_repr_content_type(self):
     """
     When the response has a Content-Type header its value is included in
     the response.
     """
     headers = Headers({'Content-Type': ['text/html']})
     original = FakeResponse(200, headers, body=[b'<!DOCTYPE html>'])
     self.assertEqual(
         "<treq.response._Response 200 'text/html' 15 bytes>",
         repr(_Response(original, None)),
     )
Esempio n. 11
0
 def test_repr_unknown_length(self):
     """
     A HTTP 1.0 or chunked response displays an unknown length.
     """
     headers = Headers({'Content-Type': ['text/event-stream']})
     original = FakeResponse(200, headers)
     original.length = UNKNOWN_LENGTH
     self.assertEqual(
         "<treq.response._Response 200 'text/event-stream' unknown size>",
         repr(_Response(original, None)),
     )
Esempio n. 12
0
 def test_repr_content_type(self):
     """
     When the response has a Content-Type header its value is included in
     the response.
     """
     headers = Headers({'Content-Type': ['text/html']})
     original = FakeResponse(200, headers, body=[b'<!DOCTYPE html>'])
     self.assertEqual(
         "<treq.response._Response 200 'text/html' 15 bytes>",
         repr(_Response(original, None)),
     )
Esempio n. 13
0
    def test_history(self):
        redirect1 = FakeResponse(
            301, Headers({'location': ['http://example.com/']}))

        redirect2 = FakeResponse(
            302, Headers({'location': ['https://example.com/']}))
        redirect2.setPreviousResponse(redirect1)

        final = FakeResponse(200, Headers({}))
        final.setPreviousResponse(redirect2)

        wrapper = _Response(final, None)

        history = wrapper.history()

        self.assertEqual(wrapper.code, 200)
        self.assertEqual(history[0].code, 301)
        self.assertEqual(history[1].code, 302)
Esempio n. 14
0
    def test_history(self):
        redirect1 = FakeResponse(
            301,
            Headers({'location': ['http://example.com/']})
        )

        redirect2 = FakeResponse(
            302,
            Headers({'location': ['https://example.com/']})
        )
        redirect2.setPreviousResponse(redirect1)

        final = FakeResponse(200, Headers({}))
        final.setPreviousResponse(redirect2)

        wrapper = _Response(final)

        history = wrapper.history()

        self.assertEqual(wrapper.code, 200)
        self.assertEqual(history[0].code, 301)
        self.assertEqual(history[1].code, 302)
Esempio n. 15
0
 def test_collect(self):
     original = FakeResponse(200, Headers(), body=[b'foo', b'bar', b'baz'])
     calls = []
     _Response(original, None).collect(calls.append)
     self.assertEqual([b'foo', b'bar', b'baz'], calls)
Esempio n. 16
0
 def test_json(self):
     original = FakeResponse(200, Headers(), body=[b'{"foo": ', b'"bar"}'])
     self.assertEqual(
         {'foo': 'bar'},
         self.successResultOf(_Response(original, None).json()),
     )
Esempio n. 17
0
 def test_content(self):
     original = FakeResponse(200, Headers(), body=[b'foo', b'bar', b'baz'])
     self.assertEqual(
         b'foobarbaz',
         self.successResultOf(_Response(original, None).content()),
     )
Esempio n. 18
0
 def test_collect(self):
     original = FakeResponse(200, Headers(), body=[b'foo', b'bar', b'baz'])
     calls = []
     _Response(original, None).collect(calls.append)
     self.assertEqual([b'foo', b'bar', b'baz'], calls)
Esempio n. 19
0
 def test_history_notimplemented(self):
     wrapper = _Response(FakeResponse(200, Headers({})))
     self.assertRaises(NotImplementedError, wrapper.history)
Esempio n. 20
0
 def test_no_history(self):
     wrapper = _Response(FakeResponse(200, Headers({})))
     self.assertEqual(wrapper.history(), [])
Esempio n. 21
0
 def test_json(self):
     original = FakeResponse(200, Headers(), body=[b'{"foo": ', b'"bar"}'])
     self.assertEqual(
         {'foo': 'bar'},
         self.successResultOf(_Response(original, None).json()),
     )
Esempio n. 22
0
 def test_no_history(self):
     wrapper = _Response(FakeResponse(200, Headers({})), None)
     self.assertEqual(wrapper.history(), [])
Esempio n. 23
0
 def test_content(self):
     original = FakeResponse(200, Headers(), body=[b'foo', b'bar', b'baz'])
     self.assertEqual(
         b'foobarbaz',
         self.successResultOf(_Response(original, None).content()),
     )