summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ci/jenkins_run_tests.bat15
-rw-r--r--spec/integration/client/client_spec.rb13
2 files changed, 17 insertions, 11 deletions
diff --git a/ci/jenkins_run_tests.bat b/ci/jenkins_run_tests.bat
index 4d1b1d1477..ba9cedd5e2 100644
--- a/ci/jenkins_run_tests.bat
+++ b/ci/jenkins_run_tests.bat
@@ -1,9 +1,14 @@
-set PATH=C:\Ruby192\bin;%PATH%
-
ruby -v
-call bundle install --binstubs --without docgen --path vendor/bundle || ( call rm Gemfile.lock && call bundle install --binstubs --path vendor/bundle )
-ruby bin\rspec -r rspec_junit_formatter -f RspecJunitFormatter -o test.xml -f documentation spec/functional spec/unit spec/stress
-set RSPEC_ERRORLVL=%ERRORLEVEL%
+call bundle check
+
+if %ERRORLEVEL% NEQ 0 (
+ call rm Gemfile.lock
+ call bundle install --without docgen --path vendor/bundle
+)
+
+bundle exec rspec -r rspec_junit_formatter -f RspecJunitFormatter -o test.xml -f documentation spec/functional spec/unit spec/stress spec/integration
+
+set RSPEC_ERRORLVL=%ERRORLEVEL%
REM Return the error level from rspec
exit /B %RSPEC_ERRORLVL%
diff --git a/spec/integration/client/client_spec.rb b/spec/integration/client/client_spec.rb
index 839899d059..ffdded10e8 100644
--- a/spec/integration/client/client_spec.rb
+++ b/spec/integration/client/client_spec.rb
@@ -22,19 +22,19 @@ EOM
context 'and no config file' do
it 'should complete with success when cwd is just above cookbooks and paths are not specified' do
chef_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "bin"))
- result = shell_out("#{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => path_to(''))
+ result = shell_out("ruby #{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => path_to(''))
result.error!
end
it 'should complete with success when cwd is below cookbooks and paths are not specified' do
chef_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "bin"))
- result = shell_out("#{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => path_to('cookbooks/x'))
+ result = shell_out("ruby #{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => path_to('cookbooks/x'))
result.error!
end
it 'should fail when cwd is below high above and paths are not specified' do
chef_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "bin"))
- result = shell_out("#{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => File.expand_path('..', path_to('')))
+ result = shell_out("ruby #{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => File.expand_path('..', path_to('')))
result.exitstatus.should == 1
end
end
@@ -44,13 +44,14 @@ EOM
it 'should load .chef/knife.rb when -z is specified' do
chef_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "bin"))
- result = shell_out("#{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => path_to(''))
- result.exitstatus.should == 2
+ result = shell_out("ruby #{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('')}\"", :cwd => path_to(''))
+ # FATAL: Configuration error NoMethodError: undefined method `xxx' for nil:NilClass
+ result.stdout.should include("xxx")
end
it 'fails to load .chef/knife.rb when -z is specified and --config-file-jail does not include the .chef/knife.rb' do
chef_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "bin"))
- result = shell_out("#{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('roles')}\"", :cwd => path_to(''))
+ result = shell_out("ruby #{chef_dir}/chef-client -z -o 'x::default' --config-file-jail \"#{path_to('roles')}\"", :cwd => path_to(''))
result.error!
end
end