1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-07-19 05:09:38 +02:00
Maybe/test/controllers/registrations_controller_test.rb
Jakub Kottnauer 90d0cc0c39
Add backend support for transaction categories (#524)
* Add backend support for transaction categories

* Fix tests

* Localize default category names

* Add tests

* Remove category icon and set default color
2024-03-07 13:15:50 -05:00

63 lines
1.7 KiB
Ruby

require "test_helper"
class RegistrationsControllerTest < ActionDispatch::IntegrationTest
test "new" do
get new_registration_url
assert_response :success
end
test "create redirects to correct URL" do
post registration_url, params: { user: {
email: "john@example.com",
password: "password",
password_confirmation: "password" } }
assert_redirected_to root_url
end
test "create seeds default transaction categories" do
assert_difference "Transaction::Category.count", Transaction::Category::DEFAULT_CATEGORIES.size do
post registration_url, params: { user: {
email: "john@example.com",
password: "password",
password_confirmation: "password" } }
end
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"
yield
ensure
ENV["HOSTED"] = nil
end
end