diff options
author | Tim Smith <tsmith@chef.io> | 2019-01-04 11:39:05 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-04 11:39:05 -0800 |
commit | fe76d3f25f20761da5719ffbf7545f07a22ba9bc (patch) | |
tree | 86001371cdf409331c1745a07fd8f9995864ad76 | |
parent | 0baaae0844983c399f16466b7e136600d6bf7ff3 (diff) | |
parent | 07413be043aaacd977b25811a8bc0e5645941fad (diff) | |
download | mixlib-cli-fe76d3f25f20761da5719ffbf7545f07a22ba9bc.tar.gz |
Merge pull request #54 from chef/lcg/spec-testing-globals-always-ends-in-tears
fix global state pollution issues across examples
-rw-r--r-- | spec/mixlib/cli_spec.rb | 2 | ||||
-rw-r--r-- | spec/spec_helper.rb | 12 |
2 files changed, 9 insertions, 5 deletions
diff --git a/spec/mixlib/cli_spec.rb b/spec/mixlib/cli_spec.rb index ed890b5..aa08744 100644 --- a/spec/mixlib/cli_spec.rb +++ b/spec/mixlib/cli_spec.rb @@ -1,6 +1,6 @@ # # Author:: Adam Jacob (<adam@chef.io>) -# Copyright:: Copyright (c) 2008-2016 Chef Software, Inc. +# Copyright:: Copyright (c) 2008-2019, Chef Software Inc. # License:: Apache License, Version 2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 6f3d7e2..ffbde8a 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -3,10 +3,6 @@ $:.push File.join(File.dirname(__FILE__), "..", "lib") require "mixlib/cli" -class TestCLI - include Mixlib::CLI -end - RSpec.configure do |config| # Use documentation format config.formatter = "doc" @@ -23,4 +19,12 @@ RSpec.configure do |config| config.filter_run focus: true config.run_all_when_everything_filtered = true config.warnings = true + + config.before(:each) do + # create a fresh TestCLI class on every example, so that examples never + # pollute global variables and create ordering issues + Object.send(:remove_const, "TestCLI") if Object.const_defined?("TestCLI") + TestCLI = Class.new + TestCLI.send(:include, Mixlib::CLI) + end end |