diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-20 09:07:57 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-20 09:07:57 +0000 |
commit | 7881eb30eaa8b01dbcfe87faa09927c75c7d6e45 (patch) | |
tree | 298bc8d2c62b2f2c29cb8ecbcf3de3eaaa6466d9 /spec/models/personal_access_token_spec.rb | |
parent | 64b66e0cb6d1bfd27abf24e06653f00bddb60597 (diff) | |
download | gitlab-ce-7881eb30eaa8b01dbcfe87faa09927c75c7d6e45.tar.gz |
Add latest changes from gitlab-org/gitlab@12-6-stable-ee
Diffstat (limited to 'spec/models/personal_access_token_spec.rb')
-rw-r--r-- | spec/models/personal_access_token_spec.rb | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/spec/models/personal_access_token_spec.rb b/spec/models/personal_access_token_spec.rb index e0e1101ffc6..b16d1f58be5 100644 --- a/spec/models/personal_access_token_spec.rb +++ b/spec/models/personal_access_token_spec.rb @@ -21,6 +21,18 @@ describe PersonalAccessToken do end end + describe 'scopes' do + describe '.for_user' do + it 'returns personal access tokens of specified user only' do + user_1 = create(:user) + token_of_user_1 = create(:personal_access_token, user: user_1) + create_list(:personal_access_token, 2) + + expect(described_class.for_user(user_1)).to contain_exactly(token_of_user_1) + end + end + end + describe ".active?" do let(:active_personal_access_token) { build(:personal_access_token) } let(:revoked_personal_access_token) { build(:personal_access_token, :revoked) } @@ -146,4 +158,25 @@ describe PersonalAccessToken do expect(personal_access_token.errors[:scopes].first).to eq "can only contain available scopes" end end + + describe 'scopes' do + 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) } + let_it_be(:valid_token_and_notified) { create(:personal_access_token, expires_at: 2.days.from_now, expire_notification_delivered: true) } + let_it_be(:valid_token) { create(:personal_access_token, expires_at: 2.days.from_now) } + + context 'in one day' do + it "doesn't have any tokens" do + expect(described_class.expiring_and_not_notified(1.day.from_now)).to be_empty + end + end + + context 'in three days' do + it 'only includes a valid token' do + expect(described_class.expiring_and_not_notified(3.days.from_now)).to contain_exactly(valid_token) + end + end + end + end end |