コード例 #1
0
    def test_down_redis(self, service_available, xmlrpc_cache):
        context = pretend.stub()
        service = pretend.stub(fetch=pretend.raiser(CacheError),
                               purge=pretend.raiser(CacheError))
        if service_available:
            _find_service = pretend.call_recorder(
                lambda *args, **kwargs: service)
        else:
            _find_service = pretend.raiser(LookupError)
        request = pretend.stub(find_service=_find_service,
                               rpc_method="rpc_method",
                               rpc_args=(0, 1))
        response = pretend.stub()

        @pretend.call_recorder
        def view(context, request):
            return response

        info = pretend.stub(options={}, exception_only=False)
        info.options["xmlrpc_cache"] = xmlrpc_cache
        derived_view = cached_return_view(view, info)  # miss
        derived_view = cached_return_view(view, info)  # hit

        assert derived_view(context, request) is response
        assert view.calls == [pretend.call(context, request)]
コード例 #2
0
ファイル: test_cache.py プロジェクト: craig5/warehouse
    def test_down_redis(self, service_available, xmlrpc_cache):
        context = pretend.stub()
        service = pretend.stub(
            fetch=pretend.raiser(CacheError), purge=pretend.raiser(CacheError)
        )
        if service_available:
            _find_service = pretend.call_recorder(lambda *args, **kwargs: service)
        else:
            _find_service = pretend.raiser(LookupError)
        request = pretend.stub(
            find_service=_find_service, rpc_method="rpc_method", rpc_args=(0, 1)
        )
        response = pretend.stub()

        @pretend.call_recorder
        def view(context, request):
            return response

        info = pretend.stub(options={}, exception_only=False)
        info.options["xmlrpc_cache"] = xmlrpc_cache
        derived_view = cached_return_view(view, info)  # miss
        derived_view = cached_return_view(view, info)  # hit

        assert derived_view(context, request) is response
        assert view.calls == [pretend.call(context, request)]
コード例 #3
0
    def test_custom_tag(self, service_available, xmlrpc_cache):
        context = pretend.stub()
        service = pretend.stub(
            fetch=pretend.call_recorder(lambda func, args, kwargs, key, tag,
                                        expires: func(*args, **kwargs)))
        if service_available:
            _find_service = pretend.call_recorder(
                lambda *args, **kwargs: service)
        else:
            _find_service = pretend.raiser(LookupError)
        request = pretend.stub(
            find_service=_find_service,
            rpc_method="rpc_method",
            rpc_args=("warehouse", "1.0.0"),
        )
        response = {}

        @pretend.call_recorder
        def view(context, request):
            return response

        info = pretend.stub(options={}, exception_only=False)
        info.options["xmlrpc_cache"] = xmlrpc_cache
        info.options["xmlrpc_cache_tag"] = "arg1/%s"
        info.options["xmlrpc_cache_arg_index"] = 1
        derived_view = cached_return_view(view, info)

        assert derived_view(context, request) is response
        assert view.calls == [pretend.call(context, request)]
コード例 #4
0
    def test_deriver(self, service_available, xmlrpc_cache, fakeredis):
        context = pretend.stub()
        purger = pretend.call_recorder(lambda tags: None)
        service = RedisXMLRPCCache("redis://127.0.0.2:6379/0", purger)
        service.redis_conn = fakeredis
        service.redis_lru.conn = fakeredis
        if service_available:
            _find_service = pretend.call_recorder(
                lambda *args, **kwargs: service)
        else:
            _find_service = pretend.raiser(LookupError)
        request = pretend.stub(find_service=_find_service,
                               rpc_method="rpc_method",
                               rpc_args=(0, 1))
        response = {}

        @pretend.call_recorder
        def view(context, request):
            return response

        info = pretend.stub(options={}, exception_only=False)
        info.options["xmlrpc_cache"] = xmlrpc_cache
        derived_view = cached_return_view(view, info)

        assert derived_view(context, request) is response
        assert view.calls == [pretend.call(context, request)]
コード例 #5
0
ファイル: test_cache.py プロジェクト: craig5/warehouse
    def test_custom_tag(self, service_available, xmlrpc_cache):
        context = pretend.stub()
        service = pretend.stub(
            fetch=pretend.call_recorder(
                lambda func, args, kwargs, key, tag, expires: func(*args, **kwargs)
            )
        )
        if service_available:
            _find_service = pretend.call_recorder(lambda *args, **kwargs: service)
        else:
            _find_service = pretend.raiser(LookupError)
        request = pretend.stub(
            find_service=_find_service,
            rpc_method="rpc_method",
            rpc_args=("warehouse", "1.0.0"),
        )
        response = {}

        @pretend.call_recorder
        def view(context, request):
            return response

        info = pretend.stub(options={}, exception_only=False)
        info.options["xmlrpc_cache"] = xmlrpc_cache
        info.options["xmlrpc_cache_tag"] = "arg1/%s"
        info.options["xmlrpc_cache_arg_index"] = 1
        derived_view = cached_return_view(view, info)

        assert derived_view(context, request) is response
        assert view.calls == [pretend.call(context, request)]
コード例 #6
0
ファイル: test_cache.py プロジェクト: craig5/warehouse
    def test_deriver(self, service_available, xmlrpc_cache, fakeredis):
        context = pretend.stub()
        purger = pretend.call_recorder(lambda tags: None)
        service = RedisXMLRPCCache("redis://127.0.0.2:6379/0", purger)
        service.redis_conn = fakeredis
        service.redis_lru.conn = fakeredis
        if service_available:
            _find_service = pretend.call_recorder(lambda *args, **kwargs: service)
        else:
            _find_service = pretend.raiser(LookupError)
        request = pretend.stub(
            find_service=_find_service, rpc_method="rpc_method", rpc_args=(0, 1)
        )
        response = {}

        @pretend.call_recorder
        def view(context, request):
            return response

        info = pretend.stub(options={}, exception_only=False)
        info.options["xmlrpc_cache"] = xmlrpc_cache
        derived_view = cached_return_view(view, info)

        assert derived_view(context, request) is response
        assert view.calls == [pretend.call(context, request)]