Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/personal_access_token_spec.rb')
-rw-r--r--spec/models/personal_access_token_spec.rb24
1 files changed, 23 insertions, 1 deletions
diff --git a/spec/models/personal_access_token_spec.rb b/spec/models/personal_access_token_spec.rb
index 69866d497a1..f3ef347121e 100644
--- a/spec/models/personal_access_token_spec.rb
+++ b/spec/models/personal_access_token_spec.rb
@@ -193,6 +193,20 @@ RSpec.describe PersonalAccessToken do
end
describe 'scopes' do
+ describe '.active' do
+ let_it_be(:revoked_token) { create(:personal_access_token, :revoked) }
+ let_it_be(:not_revoked_false_token) { create(:personal_access_token, revoked: false) }
+ let_it_be(:not_revoked_nil_token) { create(:personal_access_token, revoked: nil) }
+ let_it_be(:expired_token) { create(:personal_access_token, :expired) }
+ let_it_be(:not_expired_token) { create(:personal_access_token) }
+ let_it_be(:never_expires_token) { create(:personal_access_token, expires_at: nil) }
+
+ it 'includes non-revoked and non-expired tokens' do
+ expect(described_class.active)
+ .to match_array([not_revoked_false_token, not_revoked_nil_token, not_expired_token, never_expires_token])
+ end
+ end
+
describe '.expiring_and_not_notified' do
let_it_be(:expired_token) { create(:personal_access_token, expires_at: 2.days.ago) }
let_it_be(:revoked_token) { create(:personal_access_token, revoked: true) }
@@ -251,7 +265,7 @@ RSpec.describe PersonalAccessToken do
describe '.simple_sorts' do
it 'includes overridden keys' do
- expect(described_class.simple_sorts.keys).to include(*%w(expires_at_asc expires_at_desc))
+ expect(described_class.simple_sorts.keys).to include(*%w(expires_at_asc expires_at_desc expires_at_asc_id_desc))
end
end
@@ -270,5 +284,13 @@ RSpec.describe PersonalAccessToken do
expect(described_class.order_expires_at_desc).to match [later_token, earlier_token]
end
end
+
+ describe '.order_expires_at_asc_id_desc' do
+ let_it_be(:earlier_token_2) { create(:personal_access_token, expires_at: 2.days.ago) }
+
+ it 'returns ordered list in combination of expires_at ascending and id descending' do
+ expect(described_class.order_expires_at_asc_id_desc).to eq [earlier_token_2, earlier_token, later_token]
+ end
+ end
end
end