代码中这个空白的解决方案是什么?

时间:2011-02-09 10:45:15

标签: ruby

这来自test_symbols_cannot_be_concatenated中的Ruby Koans练习。以前的练习使用过assert_equal次测试。这是启蒙之路上的第一个assert_raise

def test_symbols_cannot_be_concatenated

  assert_raise(_____) do
    :cats + :dogs
  end
end

2 个答案:

答案 0 :(得分:7)

NoMethodError我想,因为尝试对两个符号求和或连接是没有意义的。

答案 1 :(得分:0)

我收到的错误消息是(为了便于阅读而添加了换行符):

[] exception expected, not  Class: <NoMethodError>   
Message: <"undefined method `+' for :cats:Symbol">    
---Backtrace---    
/Ruby_on_Rails/koans/about_symbols.rb:89:in   
`block in test_symbols_cannot_be_concatenated'  

按照模式,我认为我已经建立了寻找“期望但是”的模式,我认为答案是“exception”。这显然不起作用,但根据noodl的回答,我意识到对于assert_raise(),线索是预期被调用的类,在这种情况下&lt; NoMethodError&gt;。

这似乎与APIdock处的文档一致,表明每个args都被评估为__check_exception_class

相关问题