]> git.openstreetmap.org Git - rails.git/blob - test/system/user_email_change_test.rb
Add frozen_string_literal comments to ruby files
[rails.git] / test / system / user_email_change_test.rb
1 # frozen_string_literal: true
2
3 require "application_system_test_case"
4
5 class UserEmailChangeTest < ApplicationSystemTestCase
6   include ActionMailer::TestHelper
7
8   def setup
9     stub_request(:get, /.*gravatar.com.*d=404/).to_return(:status => 404)
10   end
11
12   test "User can change their email address" do
13     user = create(:user)
14     sign_in_as(user)
15
16     assert_emails 1 do
17       visit account_path
18       fill_in "New Email Address", :with => "new_tester@example.com"
19       click_on "Save Changes"
20       assert_equal "new_tester@example.com", user.reload.new_email
21     end
22
23     email = ActionMailer::Base.deliveries.first
24     assert_equal 1, email.to.count
25     assert_equal "new_tester@example.com", email.to.first
26     assert_match %r{/user/confirm-email\?confirm_string=[A-Za-z0-9\-_%]+\s}, email.parts[0].parts[0].decoded
27
28     if email.parts[0].parts[0].decoded =~ %r{(/user/confirm-email\?confirm_string=[A-Za-z0-9\-_%]+)\s}
29       visit Regexp.last_match(1)
30       assert page.has_css?("body.accounts-show")
31     end
32
33     assert_equal "new_tester@example.com", user.reload.email
34   end
35 end