From 78c84c5028053caf524deb0b4a113d6dca73a282 Mon Sep 17 00:00:00 2001 From: Jose Farias Date: Fri, 2 Feb 2024 19:48:45 -0600 Subject: [PATCH] Pull out in_hosted_app helper --- .../registrations_controller_test.rb | 55 +++++++++++-------- 1 file changed, 31 insertions(+), 24 deletions(-) diff --git a/test/controllers/registrations_controller_test.rb b/test/controllers/registrations_controller_test.rb index 8d441b83..cbf3b6c4 100644 --- a/test/controllers/registrations_controller_test.rb +++ b/test/controllers/registrations_controller_test.rb @@ -16,31 +16,38 @@ class RegistrationsControllerTest < ActionDispatch::IntegrationTest end test "create when hosted requires an invite code" do + in_hosted_app do + assert_no_difference "User.count" do + post registration_url, params: { user: { + email: "john@example.com", + password: "password", + password_confirmation: "password" } } + assert_redirected_to new_registration_url + + post registration_url, params: { user: { + email: "john@example.com", + password: "password", + password_confirmation: "password", + invite_code: "foo" } } + assert_redirected_to new_registration_url + end + + assert_difference "User.count", +1 do + post registration_url, params: { user: { + email: "john@example.com", + password: "password", + password_confirmation: "password", + invite_code: InviteCode.generate! } } + assert_redirected_to root_url + end + end + end + + private + + def in_hosted_app ENV["HOSTED"] = "true" - - assert_no_difference "User.count" do - post registration_url, params: { user: { - email: "john@example.com", - password: "password", - password_confirmation: "password" } } - assert_redirected_to new_registration_url - - post registration_url, params: { user: { - email: "john@example.com", - password: "password", - password_confirmation: "password", - invite_code: "foo" } } - assert_redirected_to new_registration_url - end - - assert_difference "User.count", +1 do - post registration_url, params: { user: { - email: "john@example.com", - password: "password", - password_confirmation: "password", - invite_code: InviteCode.generate! } } - assert_redirected_to root_url - end + yield ensure ENV["HOSTED"] = nil end