RubyKoans:破碎的公案?
可能是一个业余爱好者的标志,我想知道问题是公案(而不是我),但是,考虑这个公案
def test_calling_global_methods_without_parentheses result = my_global_method 2, 3 assert_equal __, result end
注意,my_global方法是
def my_global_method(a,b) a + b end
这是它在终端给我的提示
The answers you seek... expected but was .
所以我做了
def test_calling_global_methods_without_parentheses result = my_global_method 2, 3 assert_equal 5, result end
我收到了这个错误
Users/mm/Sites/koans/about_methods.rb:21:in `eval': (eval):1: syntax error, unexpected tINTEGER, expecting keyword_do or '{' or '(' (SyntaxError) assert_equal 5, my_global_method 2, 3 ^ from /Users/mm/Sites/koans/about_methods.rb:21:in `test_sometimes_missing_parentheses_are_ambiguous' from /Users/mm/Sites/koans/edgecase.rb:377:in `meditate' from /Users/mm/Sites/koans/edgecase.rb:449:in `block in walk' from /Users/mm/Sites/koans/edgecase.rb:460:in `block (3 levels) in each_step' from /Users/mm/Sites/koans/edgecase.rb:458:in `each' from /Users/mm/Sites/koans/edgecase.rb:458:in `block (2 levels) in each_step' from /Users/mm/Sites/koans/edgecase.rb:457:in `each' from /Users/mm/Sites/koans/edgecase.rb:457:in `each_with_index' from /Users/mm/Sites/koans/edgecase.rb:457:in `block in each_step' from /Users/mm/Sites/koans/edgecase.rb:455:in `catch' from /Users/mm/Sites/koans/edgecase.rb:455:in `each_step' from /Users/mm/Sites/koans/edgecase.rb:448:in `walk' from /Users/mm/Sites/koans/edgecase.rb:470:in `block in '
有谁知道这个问题,还是能告诉我如何跳过一个公案?
哦,我测试了这个公案。 如果您注意到错误在第21行,而不是“test_calling_global_methods_without_parentheses”方法。 这是“test_sometimes_missing_parentheses_are_ambiguous”方法应该是错误的。 您应该纠正该方法。
def test_calling_global_methods_without_parentheses result = my_global_method 2, 3 assert_equal 5, result # You're fine with this koan. end # (NOTE: We are Using eval below because the example code is # considered to be syntactically invalid). def test_sometimes_missing_parentheses_are_ambiguous eval "assert_equal 5, my_global_method 2, 3" # ENABLE CHECK # **LOOK HERE~~~ HERE IS THE ERROR YOU SEE** Just correct it.
如果有任何公案,你不知道如何处理,只需评论它。