0

我们目前正在开发三个 puppet 模块。一个包含一个已定义类型,其他两个将使用该类型。这个模块,我们称之为 ModuleA,尚未发布到我们的本地锻造/存储库中,直到它成功实施并在其他两个模块(公司程序)中的至少一个中进行测试后才会发布。

定义类型在其他两个模块中用于创建资源并通过“包含”引用。在 metadata.json 中,ModuleA 被添加为依赖项。

当我运行pdk test unit它失败,因为定义的类型是未知的。目前其他两个模块中只有一个it { is_expected.to compile.with_all_deps }测试,没什么复杂的。

如果 ModuleA 尚未发布,如何测试其他两个模块?

4

1 回答 1

0

如果 ModuleA 尚未发布,如何测试其他两个模块?

您对其他模块的测试可以提供所需定义类型的存根实现。这可以通过以下方式完成:pre_condition

describe 'Module_b::Some_class' do
  let(:pre_condition) { 'define module_a::some_type($param1, $param2) { }' }

  # ...
end

请确保存根的数量和名称与实际定义的类型相匹配。

于 2020-07-10T21:44:57.663 回答