def test_cache_deco(browser, varnish): response = pretend.stub( cache_control=pretend.stub(), surrogate_control=pretend.stub(), ) view = pretend.call_recorder(lambda *a, **kw: response) app = pretend.stub( config=pretend.stub( cache=pretend.stub( browser=browser, varnish=varnish, ), ), ) request = pretend.stub() resp = cache("test")(view)(app, request) assert resp is response if browser: assert resp.cache_control.max_age == browser["test"] if varnish: assert resp.surrogate_control.max_age == varnish["test"]
def test_cache_deco(browser, varnish, status): response = pretend.stub( status_code=status, cache_control=pretend.stub(), surrogate_control=pretend.stub(), ) view = pretend.call_recorder(lambda *a, **kw: response) app = pretend.stub() request = pretend.stub() resp = cache(browser=browser, varnish=varnish)(view)(app, request) assert resp is response if 200 <= resp.status_code < 400: if browser: assert resp.cache_control.public assert resp.cache_control.max_age == browser if varnish: assert resp.surrogate_control.public assert resp.surrogate_control.max_age == varnish