1
我的类定义为:ruby的factory_girl正在返回参数错误 - 为什么?
class ScheduleKaya < OrchestrateIo
def initialize(bot_client_id)
@bot_client_id = bot_client_id
@collection = :schedules
@client = Orchestrate::Client.new(ENV['ORCHESTRATE_API'])
end
end
厂如:
## spec/factories/schedules.rb
FactoryGirl.define do
factory :base_schedule, class: ScheduleKaya do
bot_client_id "test-client-id"
end
end
Rspec的为:
context "when creating a new reminder for test-client-id on Feburary 1st 2015" do
let(:schedule) { FactoryGirl.build(:base_schedule)}
Timecop.freeze(Chronic.parse("february 14, 2014 at 10am"))
it "creates an instance of ScheduleKaya" do
expect(schedule).to be_a ScheduleKaya
end
我也得到一个参数错误:
Failure/Error: let(:schedule) { FactoryGirl.build(:base_schedule)}
ArgumentError:
wrong number of arguments (0 for 1)
问题:为什么参数是错误的,因为在类中,它只需要一个参数来初始化,并且我在工厂中提供了一个参数。
参数错误可能发生在顶层'let'块的执行过程中的任何地方(例如在'Orchestrate :: Client.new'的中间) –