运维开发网

Ruby:我如何使用assert_nothing_raised?

运维开发网 https://www.qedev.com 2020-05-15 09:26 出处:网络 作者:运维开发网整理
assert_nothing_raised do @board.make_move(0,0,Board::HUMAN) end 并且文档说: Passes if block does not throw anything. Example: assert_nothing_thrown do [1, 2].uniq end 我的make_move方法: def make_mov
assert_nothing_raised do
   @board.make_move(0,0,Board::HUMAN)
 end

并且文档说:

Passes if block does not throw anything.

Example:

 assert_nothing_thrown do
   [1, 2].uniq
 end

我的make_move方法:

def make_move(x, y, player)
    return false
 end

我收到错误:

test_can_make_valid_move_in_the_first_row(BoardTest):
ArgumentError: wrong number of arguments (1 for 2)
以下代码适用于我.对你起作用吗?

require 'test/unit'
require 'test/unit/ui/console/testrunner'

class MyTestClass < Test::Unit::TestCase
  def test_something
    assert_nothing_raised do
      p 'hi'
    end
  end
end

Test::Unit::UI::Console::TestRunner.run(MyTestClass)

我认为你正在使用assert_nothing_raised.尝试更换

@board.make_move(0,0,Board::HUMAN)

用更简单的东西,比如

p 'hi'

并看看是否有效.还可以尝试在测试中注释掉所有其他代码.

0

精彩评论

暂无评论...
验证码 换一张
取 消