0

如果有人能告诉我为什么这不会通过,将不胜感激,它变得 nil 而不是 value

class Hello
  def hi
    puts "hello"
  end
end


describe Hello do

  before do
    @obj = Hello.new
  end

  describe "#hi" do
    it "should say hello" do
      @obj.hi.should == "hello"
    end
  end

end
4

3 回答 3

3

因为puts总会回来nil#hi总会回来nil

将其更改为:

class Hello
  def hi
    "hello"
  end
end
于 2012-12-10T20:35:30.650 回答
2

puts只是输出字符串,但nil作为值返回,所以hi只是返回那个 nil 值。

于 2012-12-10T20:36:34.847 回答
0

我还没有测试过,但你也应该能够针对 $stdout 进行测试。它应该收到

于 2012-12-10T22:00:04.090 回答