summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzciński <ayufan@ayufan.eu>2018-12-04 12:32:47 +0000
committerKamil Trzciński <ayufan@ayufan.eu>2018-12-04 12:32:47 +0000
commit77f215b3f4feaab49f9d10975554b8c866e865f9 (patch)
tree1a67fc6cf96a638b57b500de38ff74c376043435
parent15c6e39026e0fbfc6a037262767db3d48e33aee1 (diff)
parent1ede6eb05712180149c2c2d8b45351f9ff4690a4 (diff)
downloadgitlab-ce-77f215b3f4feaab49f9d10975554b8c866e865f9.tar.gz
Merge branch 'ce-jej/group-saml-metadata-endpoint' into 'master'
[CE] Backport TokenAuthenticatable comparison method and stub_default_url_options See merge request gitlab-org/gitlab-ce!19094
-rw-r--r--app/models/concerns/token_authenticatable.rb5
-rw-r--r--spec/support/helpers/stub_configuration.rb5
2 files changed, 10 insertions, 0 deletions
diff --git a/app/models/concerns/token_authenticatable.rb b/app/models/concerns/token_authenticatable.rb
index 23a43aec677..be930b6197a 100644
--- a/app/models/concerns/token_authenticatable.rb
+++ b/app/models/concerns/token_authenticatable.rb
@@ -53,6 +53,11 @@ module TokenAuthenticatable
define_method("reset_#{token_field}!") do
strategy.reset_token!(self)
end
+
+ define_method("#{token_field}_matches?") do |other_token|
+ token = read_attribute(token_field)
+ token.present? && ActiveSupport::SecurityUtils.variable_size_secure_compare(other_token, token)
+ end
end
end
end
diff --git a/spec/support/helpers/stub_configuration.rb b/spec/support/helpers/stub_configuration.rb
index 776119564ec..2851cd9733c 100644
--- a/spec/support/helpers/stub_configuration.rb
+++ b/spec/support/helpers/stub_configuration.rb
@@ -27,6 +27,11 @@ module StubConfiguration
allow(Gitlab.config.gitlab).to receive_messages(to_settings(messages))
end
+ def stub_default_url_options(host: "localhost", protocol: "http")
+ url_options = { host: host, protocol: protocol }
+ allow(Rails.application.routes).to receive(:default_url_options).and_return(url_options)
+ end
+
def stub_gravatar_setting(messages)
allow(Gitlab.config.gravatar).to receive_messages(to_settings(messages))
end