Это мой код:
module Statuspage
class UserBuilder
def initialize(user)
@statuspage_user = "Statuspage::UserBuilder::#{user.class.name}User".constantize.new(user)
end
def build
{
subscriber:
{
email: statuspage_user.email,
phone_country: statuspage_user.country_code,
phone_number: statuspage_user.phone_number,
skip_confirmation_notification: true
}
}
end
private
MerchantEmployeeUser = Struct.new(:user) do
def email
user.email
end
def country_code
user.country.code
end
def phone_number
user.phone_number
end
end
ConsumerRegistrationUser = Struct.new(:user) do
def email
user.email
end
def country_code
user.country.code
end
def phone_number
user.phone_number
end
end
attr_reader :statuspage_user
end
end
Теперь я получаю эту ошибку почти на каждом тесте:
Ошибка / Ошибка:
@statuspage_user = "Statuspage::UserBuilder::#{user.class.name}User".constantize.new(user)
NameError: uninitialized постоянная страница статуса :: UserBuilder :: NilClassUser Вы имели в виду? NilClass
в противном случае код работает без проблем.