小编Mut*_*thu的帖子

lambda和begin block有什么区别?

我正在尝试验证在执行将引发异常的rake任务后是否已将文本写入文件(build.log).检查下面的代码片段,开头的代码片段,而lambda抛出一条消息,说它无法找到build.log文件.

使用开始测试.(工作)

  begin 
     Rake::Task['git:checkout'].invoke //writes "destination already exists" to build.log
  rescue
  end
  IO.read(@project_folder+@build_id+"/build.log").should match(/.*destination.*already.*exists.* /)   
Run Code Online (Sandbox Code Playgroud)

尝试使用lambda测试相同的内容.(不起作用)

  lambda {
    Rake::Task['git:checkout'].invoke //writes "destination already exists" to build.log
  }
  IO.read(@project_folder+@build_id+"/build.log").should match(/.*destination.*already.*exists.* /) 
Run Code Online (Sandbox Code Playgroud)

这两者有什么区别?

ruby rake rspec

4
推荐指数
1
解决办法
453
查看次数

标签 统计

rake ×1

rspec ×1

ruby ×1