如何验证ruby中的代码块是否成功执行完毕?

更新于
2026-10-09 23:27:35
0阅读来源:SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计142个文字,预计阅读时间需要1分钟。

如何验证ruby中的代码块是否成功执行完毕?

我有一个测试需要检查是否正确地在调用给定的方法块。块=lambda { +}

我有一个测试需要检查是否正在调用给定方法的块.

block = lambda { #some stuff } block.should_receive(:call) get_data_with_timeout(1, &block) def get_data_with_timeout(timeout) begin timeout(timeout) { data = get_data yield data #do stuff } rescue Timeout::Error #timeout! end end

基本上我想检查一下,如果没有超时,则调用该块,反之亦然.这在rspec中是否可行?

我使用的常见模式:

block_called = false get_data_with_timeout(1) do block_called = true end block_called.should be_true

如何验证ruby中的代码块是否成功执行完毕?

本文共计142个文字,预计阅读时间需要1分钟。

如何验证ruby中的代码块是否成功执行完毕?

我有一个测试需要检查是否正确地在调用给定的方法块。块=lambda { +}

我有一个测试需要检查是否正在调用给定方法的块.

block = lambda { #some stuff } block.should_receive(:call) get_data_with_timeout(1, &block) def get_data_with_timeout(timeout) begin timeout(timeout) { data = get_data yield data #do stuff } rescue Timeout::Error #timeout! end end

基本上我想检查一下,如果没有超时,则调用该块,反之亦然.这在rspec中是否可行?

我使用的常见模式:

block_called = false get_data_with_timeout(1) do block_called = true end block_called.should be_true

如何验证ruby中的代码块是否成功执行完毕?