diff --git a/lib/travis/api/app/responders/service.rb b/lib/travis/api/app/responders/service.rb index 5af8b8fe..bc775195 100644 --- a/lib/travis/api/app/responders/service.rb +++ b/lib/travis/api/app/responders/service.rb @@ -16,7 +16,7 @@ module Travis::Api::App::Responders def cache_control if final? mode = endpoint.public? ? :public : :private - endpoint.expires(31536000, mode, :must_revalidate) # 1 year + endpoint.expires(31536000, mode) # 1 year else # FIXME: Chrome WTF? endpoint.cache_control :no_cache diff --git a/spec/unit/responders/service_spec.rb b/spec/unit/responders/service_spec.rb new file mode 100644 index 00000000..5ee9412f --- /dev/null +++ b/spec/unit/responders/service_spec.rb @@ -0,0 +1,21 @@ +require 'spec_helper' + +describe Travis::Api::App::Responders::Service do + class MyService < Travis::Api::App::Responders::Service + end + + let(:endpoint) { stub 'endpoint', public?: true } + let(:resource) { stub 'resource', run: {} } + let(:options) { {} } + let(:service) { MyService.new(endpoint, resource, options) } + + context 'with final resource' do + before { resource.expects(:final?).returns(true) } + + it 'caches resource for a year' do + endpoint.expects(:expires).with(31536000, :public) + service.apply + end + end + +end