summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Keiser <jkeiser@opscode.com>2014-05-27 10:13:10 -0700
committerJohn Keiser <jkeiser@opscode.com>2014-05-27 11:21:10 -0700
commitb777f2ad803bf98270ece081a04b0efd6ba6c642 (patch)
tree0da6ec83d5c40ead1c7dd5c5f92142da9c539d0d
parent4e80953c0c8eba632cbea441846534d4e2e0b8e9 (diff)
downloadchef-zero-b777f2ad803bf98270ece081a04b0efd6ba6c642.tar.gz
rspec: Default port to 8900, check if options are right
-rw-r--r--lib/chef_zero/rspec.rb19
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/chef_zero/rspec.rb b/lib/chef_zero/rspec.rb
index f6fca10..120707b 100644
--- a/lib/chef_zero/rspec.rb
+++ b/lib/chef_zero/rspec.rb
@@ -27,14 +27,19 @@ module ChefZero
context "When the Chef server #{description}", *tags do
before :each do
- unless ChefZero::RSpec.server
- default_opts = {:port => 8889, :signals => false, :log_requests => true}
- server_opts = if self.respond_to?(:chef_zero_opts)
- default_opts.merge(chef_zero_opts)
- else
- default_opts
- end
+ default_opts = {:port => 8900, :signals => false, :log_requests => true}
+ server_opts = if self.respond_to?(:chef_zero_opts)
+ default_opts.merge(chef_zero_opts)
+ else
+ default_opts
+ end
+ if ChefZero::RSpec.server && server_opts.any? { |opt, value| ChefZero::RSpec.server.options[opt] != value }
+ ChefZero::RSpec.server.stop
+ ChefZero::RSpec.server = nil
+ end
+
+ unless ChefZero::RSpec.server
# TODO: can this be logged easily?
# pp :zero_opts => server_opts