summaryrefslogtreecommitdiff
path: root/code/environments/production/modules/stdlib/spec/spec_helper_local.rb
diff options
context:
space:
mode:
Diffstat (limited to 'code/environments/production/modules/stdlib/spec/spec_helper_local.rb')
-rw-r--r--code/environments/production/modules/stdlib/spec/spec_helper_local.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/code/environments/production/modules/stdlib/spec/spec_helper_local.rb b/code/environments/production/modules/stdlib/spec/spec_helper_local.rb
new file mode 100644
index 0000000..5fea4da
--- /dev/null
+++ b/code/environments/production/modules/stdlib/spec/spec_helper_local.rb
@@ -0,0 +1,31 @@
+# automatically load any shared examples or contexts
+Dir['./spec/support/**/*.rb'].sort.each { |f| require f }
+
+# HACK: to enable all the expect syntax (like allow_any_instance_of) in rspec-puppet examples
+RSpec::Mocks::Syntax.enable_expect(RSpec::Puppet::ManifestMatchers)
+
+RSpec.configure do |config|
+ # supply tests with a possibility to test for the future parser
+ config.add_setting :puppet_future
+ config.puppet_future = Puppet.version.to_f >= 4.0
+
+ config.before :each do
+ # Ensure that we don't accidentally cache facts and environment between
+ # test cases. This requires each example group to explicitly load the
+ # facts being exercised with something like
+ # Facter.collection.loader.load(:ipaddress)
+ Facter.clear
+ Facter.clear_messages
+
+ RSpec::Mocks.setup
+ end
+
+ config.after :each do
+ RSpec::Mocks.verify
+ RSpec::Mocks.teardown
+ end
+end
+
+# Helper class to test handling of arguments which are derived from string
+class AlsoString < String
+end