Test that encouragement disappears after verified email signup

This commit is contained in:
Anton Khorev 2025-01-13 14:11:11 +03:00
parent 03c7b18fa8
commit e9fd07a799

View file

@ -4,9 +4,16 @@ class CreateNoteTest < ApplicationSystemTestCase
include ActionMailer::TestHelper
def setup
OmniAuth.config.test_mode = true
stub_request(:get, /.*gravatar.com.*d=404/).to_return(:status => 404)
end
def teardown
OmniAuth.config.mock_auth[:google] = nil
OmniAuth.config.test_mode = false
end
test "can create note" do
visit new_note_path(:anchor => "map=18/0/0")
@ -93,7 +100,7 @@ class CreateNoteTest < ApplicationSystemTestCase
check_no_encouragement_while_logging_out
end
test "encouragement to contribute appears after 10 created notes and disappears after signup" do
test "encouragement to contribute appears after 10 created notes and disappears after email signup" do
check_encouragement_while_creating_notes(10)
sign_up_with_email
@ -101,6 +108,14 @@ class CreateNoteTest < ApplicationSystemTestCase
check_no_encouragement_while_logging_out
end
test "encouragement to contribute appears after 10 created notes and disappears after google signup" do
check_encouragement_while_creating_notes(10)
sign_up_with_google
check_no_encouragement_while_logging_out
end
private
def check_encouragement_while_creating_notes(encouragement_threshold)
@ -162,4 +177,18 @@ class CreateNoteTest < ApplicationSystemTestCase
assert_content "Welcome!"
end
def sign_up_with_google
OmniAuth.config.add_mock(:google,
:uid => "123454321",
:extra => { :id_info => { :openid_id => "http://localhost:1123/new.tester" } },
:info => { :email => "google_user_account@example.com", :name => "google_user_account" })
click_on "Sign Up"
within_content_body do
click_on "Log in with Google"
click_on "Sign Up"
end
end
end