diff options
author | Kamil Trzciński <ayufan@ayufan.eu> | 2018-12-04 12:32:47 +0000 |
---|---|---|
committer | Kamil Trzciński <ayufan@ayufan.eu> | 2018-12-04 12:32:47 +0000 |
commit | 77f215b3f4feaab49f9d10975554b8c866e865f9 (patch) | |
tree | 1a67fc6cf96a638b57b500de38ff74c376043435 | |
parent | 15c6e39026e0fbfc6a037262767db3d48e33aee1 (diff) | |
parent | 1ede6eb05712180149c2c2d8b45351f9ff4690a4 (diff) | |
download | gitlab-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.rb | 5 | ||||
-rw-r--r-- | spec/support/helpers/stub_configuration.rb | 5 |
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 |