Minitest有RSpec的版本吗?

时间:2013-04-21 22:21:17

标签: ruby minitest

在RSpec中我可以mock_obj.should_receive(:method).with(anything)...执行“任何事情”。是任何变量。

我可以在Minitest中这样做吗?

1 个答案:

答案 0 :(得分:3)

Minitest,因为它包含在Ruby 1.9中,提供了MiniTest::Spec,这是一种类似语境的RSpec语法。这不是RSpec。

从Github页面,这是Minitest提供的内容

  
      
  • minitest / autorun - 运行所有测试的简单明确的方式。
  •   
  • minitest / unit - 一个非常快速,简单,干净的测试系统。
  •   
  • minitest / spec - 一个非常快速,简单,干净的规范系统。
  •   
  • minitest / mock - 一个简单干净的模拟/存根系统。
  •   
  • minitest / benchmark - 断言算法性能的绝佳方式。
  •   
  • minitest / pride - 展示你对测试的自豪感!
  •   
  • 令人难以置信的小而快的跑步者,但没有花里胡哨。
  •   

mock_obj.should_receive(:method).with(anything)做同样的事情,你会写

要求'minitest / autorun'

describe YourClass do
  it 'should receive a call to method' do
    mock_obj = Minitest::Mock.new
    mock_obj.expect(:method, :your_return, [anything])
    # ...
    mock_obj.verify # verify that the expected call has been made
  end
end