コード例 #1
0
ファイル: test_http.py プロジェクト: nlhkabu/warehouse
    def test_explicit_etag(self):
        response = pretend.stub(last_modified=None, etag="foo", conditional_response=False, app_iter=iter([b"foo"]))
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub()

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert response.conditional_response
コード例 #2
0
    def test_explicit_etag(self):
        response = pretend.stub(
            last_modified=None,
            etag="foo",
            conditional_response=False,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub()

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert response.conditional_response
コード例 #3
0
    def test_has_last_modified(self):
        response = pretend.stub(
            last_modified=pretend.stub(),
            etag=None,
            conditional_response=False,
            app_iter=iter([b"foo"]),
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub()

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert response.conditional_response
コード例 #4
0
ファイル: test_http.py プロジェクト: anzhaozhong/warehouse
    def test_no_etag(self):
        response = pretend.stub(
            status_code=200,
            last_modified=None,
            etag=None,
            conditional_response=False,
            app_iter=iter([b"foo"]),
            content_length=None,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub(method="GET")

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert not response.conditional_response
コード例 #5
0
ファイル: test_http.py プロジェクト: craig5/warehouse
    def test_no_etag(self):
        response = pretend.stub(
            status_code=200,
            last_modified=None,
            etag=None,
            conditional_response=False,
            app_iter=iter([b"foo"]),
            content_length=None,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub(method="GET")

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert not response.conditional_response
コード例 #6
0
ファイル: test_http.py プロジェクト: anzhaozhong/warehouse
    def test_no_implicit_etag_wrong_method(self, method):
        response = pretend.stub(
            last_modified=None,
            etag=None,
            conditional_response=False,
            md5_etag=pretend.call_recorder(lambda: None),
            app_iter=[b"foo"],
            status_code=200,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub(method=method)

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert not response.conditional_response
        assert response.md5_etag.calls == []
コード例 #7
0
ファイル: test_http.py プロジェクト: craig5/warehouse
    def test_no_implicit_etag_wrong_method(self, method):
        response = pretend.stub(
            last_modified=None,
            etag=None,
            conditional_response=False,
            md5_etag=pretend.call_recorder(lambda: None),
            app_iter=[b"foo"],
            status_code=200,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub(method=method)

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert not response.conditional_response
        assert response.md5_etag.calls == []
コード例 #8
0
ファイル: test_http.py プロジェクト: anzhaozhong/warehouse
    def test_implicit_etag_buffers_streaming(self, method):
        response = pretend.stub(
            last_modified=None,
            etag=None,
            conditional_response=False,
            md5_etag=pretend.call_recorder(lambda: None),
            app_iter=iter([b"foo"]),
            body=b"foo",
            content_length=3,
            status_code=200,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub(method=method)

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert response.conditional_response
        assert response.md5_etag.calls == [pretend.call()]
コード例 #9
0
ファイル: test_http.py プロジェクト: craig5/warehouse
    def test_implicit_etag_buffers_streaming(self, method):
        response = pretend.stub(
            last_modified=None,
            etag=None,
            conditional_response=False,
            md5_etag=pretend.call_recorder(lambda: None),
            app_iter=iter([b"foo"]),
            body=b"foo",
            content_length=3,
            status_code=200,
        )
        handler = pretend.call_recorder(lambda request: response)
        request = pretend.stub(method=method)

        tween = conditional_http_tween_factory(handler, pretend.stub())

        assert tween(request) is response
        assert handler.calls == [pretend.call(request)]
        assert response.conditional_response
        assert response.md5_etag.calls == [pretend.call()]