我是Ruby的新手,也是Rspec的新手,我正在尝试通过以下Rspec代码:
require "#{File.dirname(__FILE__)}/fish"
describe fish do
before do
@fish = fish.new(3)
end
it "should report the number of fish" do
@fish.number.should equal 3
end
end
我正在尝试测试以下代码,出于多种原因我肯定是错的,但是现在我只是试图通过“错误数量的参数(1为0)”错误“:
class fish
def intialize n
@number = n
end
end
答案 0 :(得分:1)
你的班级定义拼写错误initialize
(错过了n之后的i。)
因此,您的类仍然具有默认构造函数,因为您没有覆盖它。
默认构造函数不带参数,因此当您尝试传递3
时抱怨。
答案 1 :(得分:1)
我注意到了几件事情......
我建议您使用括号,直到习惯Ruby的语法。
您班上的拼写错误initialize
。
使用大写Fish
初始化Fish
(以及类F
),
describe fish do
before do
@fish = Fish.new(3)
end
it "should report the number of fish" do
@fish.number.should equal(3)
end
end
class Fish
def intialize n
@number = n
end
end