summaryrefslogtreecommitdiff
path: root/spec/models/key_spec.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 07:33:21 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 07:33:21 +0000
commit36a59d088eca61b834191dacea009677a96c052f (patch)
treee4f33972dab5d8ef79e3944a9f403035fceea43f /spec/models/key_spec.rb
parenta1761f15ec2cae7c7f7bbda39a75494add0dfd6f (diff)
downloadgitlab-ce-36a59d088eca61b834191dacea009677a96c052f.tar.gz
Add latest changes from gitlab-org/gitlab@15-0-stable-eev15.0.0-rc42
Diffstat (limited to 'spec/models/key_spec.rb')
-rw-r--r--spec/models/key_spec.rb40
1 files changed, 15 insertions, 25 deletions
diff --git a/spec/models/key_spec.rb b/spec/models/key_spec.rb
index e1135aa440b..225c9714187 100644
--- a/spec/models/key_spec.rb
+++ b/spec/models/key_spec.rb
@@ -102,15 +102,15 @@ RSpec.describe Key, :mailer do
context 'expiration scopes' do
let_it_be(:user) { create(:user) }
- let_it_be(:expired_today_not_notified) { create(:key, expires_at: Time.current, user: user) }
- let_it_be(:expired_today_already_notified) { create(:key, expires_at: Time.current, user: user, expiry_notification_delivered_at: Time.current) }
- let_it_be(:expired_yesterday) { create(:key, expires_at: 1.day.ago, user: user) }
+ let_it_be(:expired_today_not_notified) { create(:key, :expired_today, user: user) }
+ let_it_be(:expired_today_already_notified) { create(:key, :expired_today, user: user, expiry_notification_delivered_at: Time.current) }
+ let_it_be(:expired_yesterday) { create(:key, :expired, user: user) }
let_it_be(:expiring_soon_unotified) { create(:key, expires_at: 3.days.from_now, user: user) }
let_it_be(:expiring_soon_notified) { create(:key, expires_at: 4.days.from_now, user: user, before_expiry_notification_delivered_at: Time.current) }
let_it_be(:future_expiry) { create(:key, expires_at: 1.month.from_now, user: user) }
describe '.expired_today_and_not_notified' do
- it 'returns keys that expire today and in the past' do
+ it 'returns keys that expire today and have not been notified' do
expect(described_class.expired_today_and_not_notified).to contain_exactly(expired_today_not_notified)
end
end
@@ -126,32 +126,22 @@ RSpec.describe Key, :mailer do
context 'validation of uniqueness (based on fingerprint uniqueness)' do
let(:user) { create(:user) }
- shared_examples 'fingerprint uniqueness' do
- it 'accepts the key once' do
- expect(build(:rsa_key_4096, user: user)).to be_valid
- end
-
- it 'does not accept the exact same key twice' do
- first_key = create(:rsa_key_4096, user: user)
-
- expect(build(:key, user: user, key: first_key.key)).not_to be_valid
- end
+ it 'accepts the key once' do
+ expect(build(:rsa_key_4096, user: user)).to be_valid
+ end
- it 'does not accept a duplicate key with a different comment' do
- first_key = create(:rsa_key_4096, user: user)
- duplicate = build(:key, user: user, key: first_key.key)
- duplicate.key << ' extra comment'
+ it 'does not accept the exact same key twice' do
+ first_key = create(:rsa_key_4096, user: user)
- expect(duplicate).not_to be_valid
- end
+ expect(build(:key, user: user, key: first_key.key)).not_to be_valid
end
- context 'with FIPS mode off' do
- it_behaves_like 'fingerprint uniqueness'
- end
+ it 'does not accept a duplicate key with a different comment' do
+ first_key = create(:rsa_key_4096, user: user)
+ duplicate = build(:key, user: user, key: first_key.key)
+ duplicate.key << ' extra comment'
- context 'with FIPS mode', :fips_mode do
- it_behaves_like 'fingerprint uniqueness'
+ expect(duplicate).not_to be_valid
end
end