从事项目工作并开始失败......以下是规范中的描述:
describe Temperature do
describe "can be constructed with an options hash" do
describe "in degrees fahrenheit" do
it "at 50 degrees" do
Temperature.new(:f => 50).in_fahrenheit.should == 50
end
坚持这一段时间,我认为我的问题与获取参数有关,但无法弄清楚如何。我的代码将结果“nil”而不是50。
class Temperature
attr_accessor :f
def in_fahrenheit
@f
end
end
答案 0 :(得分:2)
实际上,您并未在任何地方为访问者:f
设置值。您应该为此定义自己的构造函数:
class Temperature
def initialize(args)
self.f = args[:f]
end
attr_accessor :f
def in_fahrenheit
f
end
end
t = Temperature.new(:f => 50)
t.f # => 50
t.in_fahrenheit # => 50