summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-31 19:59:19 +0200
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-31 19:59:19 +0200
commit2c6207135e917a0b8f25f657916060405f1f85b5 (patch)
treec6f6f3d5aa79701790a39c689761b1d74ed9d12a
parent95c7aa62defdbc7984c71faeb0b901a7fe59b223 (diff)
downloadgitlab-ce-error-when-ldap-doesn-t-supply-an-email-address-14559.tar.gz
Allow temp-oauth-email as notification emailerror-when-ldap-doesn-t-supply-an-email-address-14559
-rw-r--r--CHANGELOG1
-rw-r--r--app/models/user.rb2
-rw-r--r--spec/models/user_spec.rb7
3 files changed, 10 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
index f95a243b0a1..781843469f0 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -18,6 +18,7 @@ v 8.7.0 (unreleased)
v 8.6.3 (unreleased)
- Destroy related todos when an Issue/MR is deleted. !3376
- Fix error 500 when target is nil on todo list. !3376
+ - Allow temporary email as notification email. !TBD
v 8.6.2
- Fix dropdown alignment. !3298
diff --git a/app/models/user.rb b/app/models/user.rb
index 128ddc2a694..2b0bee2099f 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -408,6 +408,8 @@ class User < ActiveRecord::Base
end
def owns_notification_email
+ return if self.temp_oauth_email?
+
self.errors.add(:notification_email, "is not an email you own") unless self.all_emails.include?(self.notification_email)
end
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index 0ab7fd88ce6..8b2fb77e28e 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -173,6 +173,13 @@ describe User, models: true do
expect(user).to be_invalid
end
end
+
+ context 'owns_notification_email' do
+ it 'accepts temp_oauth_email emails' do
+ user = build(:user, email: "temp-email-for-oauth@example.com")
+ expect(user).to be_valid
+ end
+ end
end
end