Exemplo n.º 1
0
    def test_purges_fails(self, monkeypatch, exception_type):
        exc = exception_type()

        class Cacher:
            @staticmethod
            @pretend.call_recorder
            def purge_key(key):
                raise exc

        class Task:
            @staticmethod
            @pretend.call_recorder
            def retry(exc):
                raise celery.exceptions.Retry

        task = Task()
        cacher = Cacher()
        request = pretend.stub(
            find_service=pretend.call_recorder(lambda iface: cacher),
            log=pretend.stub(
                info=pretend.call_recorder(lambda *args, **kwargs: None),
                error=pretend.call_recorder(lambda *args, **kwargs: None),
            ),
        )

        with pytest.raises(celery.exceptions.Retry):
            fastly.purge_key(task, request, "foo")

        assert request.find_service.calls == [pretend.call(IOriginCache)]
        assert cacher.purge_key.calls == [pretend.call("foo")]
        assert task.retry.calls == [pretend.call(exc=exc)]
        assert request.log.info.calls == [pretend.call("Purging %s", "foo")]
        assert request.log.error.calls == [
            pretend.call("Error purging %s: %s", "foo", str(exception_type()))
        ]
Exemplo n.º 2
0
    def test_purges_fails(self, monkeypatch, exception_type):
        exc = exception_type()

        class Cacher:
            @staticmethod
            @pretend.call_recorder
            def purge_key(key):
                raise exc

        class Task:
            @staticmethod
            @pretend.call_recorder
            def retry(exc):
                raise celery.exceptions.Retry

        task = Task()
        cacher = Cacher()
        request = pretend.stub(
            find_service=pretend.call_recorder(lambda iface: cacher),
            log=pretend.stub(
                info=pretend.call_recorder(lambda *args, **kwargs: None),
                error=pretend.call_recorder(lambda *args, **kwargs: None),
            ),
        )

        with pytest.raises(celery.exceptions.Retry):
            fastly.purge_key(task, request, "foo")

        assert request.find_service.calls == [pretend.call(IOriginCache)]
        assert cacher.purge_key.calls == [pretend.call("foo")]
        assert task.retry.calls == [pretend.call(exc=exc)]
        assert request.log.info.calls == [pretend.call("Purging %s", "foo")]
        assert request.log.error.calls == [
            pretend.call("Error purging %s: %s", "foo", str(exception_type()))
        ]
Exemplo n.º 3
0
    def test_purges_fails(self, monkeypatch, exception_type):
        exc = exception_type()

        class Cacher:
            @staticmethod
            @pretend.call_recorder
            def purge_key(key):
                raise exc

        class Task:
            @staticmethod
            @pretend.call_recorder
            def retry(exc):
                raise celery.exceptions.Retry

        task = Task()
        cacher = Cacher()
        request = pretend.stub(
            find_service=pretend.call_recorder(lambda iface: cacher),
        )

        with pytest.raises(celery.exceptions.Retry):
            fastly.purge_key(task, request, "foo")

        assert request.find_service.calls == [pretend.call(IOriginCache)]
        assert cacher.purge_key.calls == [pretend.call("foo")]
        assert task.retry.calls == [pretend.call(exc=exc)]
Exemplo n.º 4
0
    def test_purges_fails(self, monkeypatch, exception_type):
        exc = exception_type()

        class Cacher:
            @staticmethod
            @pretend.call_recorder
            def purge_key(key):
                raise exc

        class Task:
            @staticmethod
            @pretend.call_recorder
            def retry(exc):
                raise celery.exceptions.Retry

        task = Task()
        cacher = Cacher()
        request = pretend.stub(
            find_service=pretend.call_recorder(lambda iface: cacher), )

        with pytest.raises(celery.exceptions.Retry):
            fastly.purge_key(task, request, "foo")

        assert request.find_service.calls == [pretend.call(IOriginCache)]
        assert cacher.purge_key.calls == [pretend.call("foo")]
        assert task.retry.calls == [pretend.call(exc=exc)]
Exemplo n.º 5
0
    def test_purges_successfully(self, monkeypatch):
        task = pretend.stub()
        cacher = pretend.stub(purge_key=pretend.call_recorder(lambda k: None))
        request = pretend.stub(
            find_service=pretend.call_recorder(lambda iface: cacher), )

        fastly.purge_key(task, request, "foo")

        assert request.find_service.calls == [pretend.call(IOriginCache)]
        assert cacher.purge_key.calls == [pretend.call("foo")]
Exemplo n.º 6
0
    def test_purges_successfully(self, monkeypatch):
        task = pretend.stub()
        cacher = pretend.stub(purge_key=pretend.call_recorder(lambda k: None))
        request = pretend.stub(
            find_service=pretend.call_recorder(lambda iface: cacher),
        )

        fastly.purge_key(task, request, "foo")

        assert request.find_service.calls == [pretend.call(IOriginCache)]
        assert cacher.purge_key.calls == [pretend.call("foo")]