Skip to content

Instantly share code, notes, and snippets.

@atomic-penguin
Forked from hartmantis/spec_helper.rb
Last active August 29, 2015 14:04
Show Gist options
  • Save atomic-penguin/ce2d655feea39bb9505b to your computer and use it in GitHub Desktop.
Save atomic-penguin/ce2d655feea39bb9505b to your computer and use it in GitHub Desktop.
A spec helper library to stub recipes into isolation
require 'chefspec'
module SpecHelper
def global_stubs
# Don't worry about external cookbook dependencies
Chef::Cookbook::Metadata.any_instance.stub(:depends)
# Test each recipe in isolation, regardless of includes
@included_recipes = []
Chef::RunContext.any_instance.stub(:loaded_recipe?).and_return(false)
Chef::Recipe.any_instance.stub(:include_recipe) do |i|
Chef::RunContext.any_instance.stub(:loaded_recipe?).with(i).and_return(true)
@included_recipes << i
end
Chef::RunContext.any_instance.stub(:loaded_recipes).and_return(@included_recipes)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment