微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Rails minitest 检查记录是否已创建 - ArgumentError:参数数量错误

如何解决Rails minitest 检查记录是否已创建 - ArgumentError:参数数量错误

我有一个简单的服务,它创建了一个名为 PropertyReport 的记录:

#app/services/portfolios/related_property_reports.rb
module Portfolios
  class RelatedPropertyReports
    def initialize(portfolio,portfolio_report)
      @portfolio = portfolio
      @portfolio_report = portfolio_report
    end

    def call
      PropertyReport.create!(
        property: property,portfolio_report: portfolio_report,)
    end
  end
end

现在我想使用下面的 minitest 来测试这个服务:

#app/services/portfolios/related_property_reports_test.rb

require 'test_helper'

module Portfolios
  class RelatedPropertyReports < ActiveSupport::TestCase
    setup do
      @portfolio = Portfolio.create(name: Faker::Bank.name)
      @property = Property.create(portfolio: @portfolio,name: Faker::Bank.name,status: 'planned')
      @portfolio_report = PortfolioReport.create(portfolio: @portfolio)
    end

    test 'create new record' do
      service.call
      assert_equal 1,PropertyReport.count
    end

    private

    def service
      @service ||= ::Portfolios::RelatedPropertyReports.new(@portfolio,@portfolio_report)
    end
  end
end

这给了我一个错误

投资组合::RelatedPropertyReports#test_create_new_record: ArgumentError:参数数量错误(给定 2,预期为 1)

考虑到我在 new 中给出了两个参数,非常奇怪。我错过了什么?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。