diff options
author | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-05-31 14:48:21 +0300 |
---|---|---|
committer | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-05-31 14:48:21 +0300 |
commit | 7a6ba30d9a2a9646ef73834fc1543ea0d6b65269 (patch) | |
tree | 3deeca3a37df66e5faa29a2dc57f71977a826936 /spec/services | |
parent | 7b0e2bbc803f1dff96941875a541e80675931828 (diff) |
Test token expirability
Diffstat (limited to 'spec/services')
-rw-r--r-- | spec/services/auth/container_registry_authentication_service_spec.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/spec/services/auth/container_registry_authentication_service_spec.rb b/spec/services/auth/container_registry_authentication_service_spec.rb index 2d114f59ca4..647731addc4 100644 --- a/spec/services/auth/container_registry_authentication_service_spec.rb +++ b/spec/services/auth/container_registry_authentication_service_spec.rb @@ -17,6 +17,21 @@ describe Auth::ContainerRegistryAuthenticationService, services: true do shared_examples 'a valid token' do it { is_expected.to include(:token) } it { expect(payload).to include('access') } + + context 'a expirable' do + let(:expires_at) { Time.at(payload['exp']) } + let(:expire_delay) { 10 } + + context 'for default configuration' do + it { expect(expires_at).to_not be_within(2.seconds).of(Time.now + expire_delay.minutes) } + end + + context 'for changed configuration' do + before { stub_application_setting(container_registry_token_expire_delay: expire_delay) } + + it { expect(expires_at).to be_within(2.seconds).of(Time.now + expire_delay.minutes) } + end + end end shared_examples 'a accessible' do |