清除include_reecipe调用以不执行任何操作,但仍将配方视为包含的 [英] Stub the include_recipe call to take no action but still count the recipe as included

查看:23
本文介绍了清除include_reecipe调用以不执行任何操作,但仍将配方视为包含的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的食谱的默认食谱只包括几个其他食谱。我知道我可以使用以下命令测试是否包含适当的食谱:

expect(chef_run).to include_recipe 'cookbook::recipe_name

但是,当我如下所示地存根INCLUDE_Recipe调用时,这不起作用

Chef::Recipe.any_instance.stub(:include_recipe).with(anything).and_return(true)

我将终止include_Recipe调用,因为我不想为此规范中的所有食谱定义所有缺少的属性。

我本以为通过存根方法返回trueChefSpec会报告它已运行并考虑包含的食谱,但它没有。您有什么想法吗?

推荐答案

我本打算将上面的问题作为一个问题发布,但我在gihub上发现了一个由"RoboticCheese"发布的solution,所以我回答了我自己的问题,因为它可能会对其他人有所帮助。

您如上所述执行存根包含食谱,但您还需要存根某些RunContext方法以将食谱算作已包含。

这篇关于清除include_reecipe调用以不执行任何操作,但仍将配方视为包含的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆