Как я могу исправить эту проблему Rspe c? заранее спасибо - PullRequest
0 голосов
/ 09 апреля 2020

Это мой код:

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

в противном случае код работает без проблем.

...