DEV: Bump rotp gem to latest version (#10472)

The rotp gem is currently pinned to version 5.1.0 and this will bump it
up to version 6.0.1.

Follow up to: 85d4370f79

because this issue we were waiting on is now closed:

https://github.com/mdp/rotp/issues/98

Because version 6 is now encoding the params I needed to update the
tests as well.
This commit is contained in:
Blake Erickson 2020-08-19 09:16:33 -06:00 committed by GitHub
parent c767fb1ed3
commit ea2e58e622
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 8 deletions

View File

@ -223,8 +223,7 @@ gem 'logster'
gem 'sassc', '2.0.1', require: false
gem "sassc-rails"
# see: https://github.com/mdp/rotp/issues/98
gem 'rotp', '5.1.0' , require: false
gem 'rotp', require: false
gem 'rqrcode'

View File

@ -315,8 +315,7 @@ GEM
rack (>= 1.4)
rexml (3.2.4)
rinku (2.0.6)
rotp (5.1.0)
addressable (~> 2.5)
rotp (6.1.0)
rqrcode (1.1.2)
chunky_png (~> 1.0)
rqrcode_core (~> 0.1)
@ -534,7 +533,7 @@ DEPENDENCIES
redis
redis-namespace
rinku
rotp (= 5.1.0)
rotp
rqrcode
rspec
rspec-html-matchers

View File

@ -44,19 +44,19 @@ RSpec.describe SecondFactorManager do
describe '#totp_provisioning_uri' do
it 'should return the right uri' do
expect(user.user_second_factors.totps.first.totp_provisioning_uri).to eq(
"otpauth://totp/#{SiteSetting.title}:#{user.email}?secret=#{user_second_factor_totp.data}&issuer=#{SiteSetting.title}"
"otpauth://totp/#{SiteSetting.title}:#{ERB::Util.url_encode(user.email)}?secret=#{user_second_factor_totp.data}&issuer=#{SiteSetting.title}"
)
end
it 'should handle a colon in the site title' do
SiteSetting.title = 'Spaceballs: The Discourse'
expect(user.user_second_factors.totps.first.totp_provisioning_uri).to eq(
"otpauth://totp/Spaceballs%20The%20Discourse:#{user.email}?secret=#{user_second_factor_totp.data}&issuer=Spaceballs+The+Discourse"
"otpauth://totp/Spaceballs%20The%20Discourse:#{ERB::Util.url_encode(user.email)}?secret=#{user_second_factor_totp.data}&issuer=Spaceballs%20The%20Discourse"
)
end
it 'should handle a two words before a colon in the title' do
SiteSetting.title = 'Our Spaceballs: The Discourse'
expect(user.user_second_factors.totps.first.totp_provisioning_uri).to eq(
"otpauth://totp/Our%20Spaceballs%20The%20Discourse:#{user.email}?secret=#{user_second_factor_totp.data}&issuer=Our+Spaceballs+The+Discourse"
"otpauth://totp/Our%20Spaceballs%20The%20Discourse:#{ERB::Util.url_encode(user.email)}?secret=#{user_second_factor_totp.data}&issuer=Our%20Spaceballs%20The%20Discourse"
)
end
end