diff --git a/spec/acceptance/rspec-1/acceptance_helper.rb b/spec/acceptance/rspec-1/acceptance_helper.rb index 8a695d4..5fb5c5b 100644 --- a/spec/acceptance/rspec-1/acceptance_helper.rb +++ b/spec/acceptance/rspec-1/acceptance_helper.rb @@ -78,7 +78,7 @@ def steak_dir Gemfile end Dir.chdir current_dir do - `rvm gemset create steak-rspec-1` + run "rvm gemset create steak-rspec-1" run "gem install bundler --pre" run "bundle install" end diff --git a/spec/acceptance/rspec-1/acceptance_spec_generator_spec.rb b/spec/acceptance/rspec-1/acceptance_spec_generator_spec.rb index ce1526a..2589425 100644 --- a/spec/acceptance/rspec-1/acceptance_spec_generator_spec.rb +++ b/spec/acceptance/rspec-1/acceptance_spec_generator_spec.rb @@ -12,7 +12,7 @@ scenario "Adding new acceptance spec" do Dir.chdir @rails_app do - `script/generate acceptance_spec document_creation` + run "script/generate acceptance_spec document_creation" end File.exist?(@rails_app + "/spec/acceptance/document_creation_spec.rb").should be_true @@ -20,7 +20,7 @@ scenario "Adding new acceptance spec (plural name)" do Dir.chdir @rails_app do - `script/generate acceptance_spec creating_documents` + run "script/generate acceptance_spec creating_documents" end File.exist?(@rails_app + "/spec/acceptance/creating_documents_spec.rb").should be_true @@ -28,7 +28,7 @@ scenario "Adding new acceptance spec (pascalized name)" do Dir.chdir @rails_app do - `script/generate acceptance_spec DocumentCreation` + run "script/generate acceptance_spec DocumentCreation" end File.exist?(@rails_app + "/spec/acceptance/document_creation_spec.rb").should be_true @@ -36,7 +36,7 @@ scenario "Adding new acceptance spec (name ending with _spec)" do Dir.chdir @rails_app do - `script/generate acceptance_spec document_creation_spec` + run "script/generate acceptance_spec document_creation_spec" end File.exist?(@rails_app + "/spec/acceptance/document_creation_spec.rb").should be_true diff --git a/spec/acceptance/rspec-1/steak_generator_spec.rb b/spec/acceptance/rspec-1/steak_generator_spec.rb index cb2dad2..edb1c07 100644 --- a/spec/acceptance/rspec-1/steak_generator_spec.rb +++ b/spec/acceptance/rspec-1/steak_generator_spec.rb @@ -10,7 +10,7 @@ rails_app = create_rails_app(:setup_steak => false) Dir.chdir rails_app do - `script/generate steak` + run "script/generate steak" end File.exist?(rails_app + "/spec/acceptance/acceptance_helper.rb").should be_true @@ -23,7 +23,7 @@ rails_app = create_rails_app(:setup_steak => false) Dir.chdir rails_app do - `script/generate steak` + run "script/generate steak" end spec_file = create_spec :path => rails_app + "/spec/acceptance", @@ -44,7 +44,7 @@ rails_app = create_rails_app(:setup_steak => false) Dir.chdir rails_app do - `script/generate steak --webrat` + run "script/generate steak --webrat" end spec_file = create_spec :path => rails_app + "/spec/acceptance", @@ -65,7 +65,7 @@ rails_app = create_rails_app Dir.chdir rails_app do - `script/generate steak` + run "script/generate steak" run("rake stats").should =~ /Acceptance specs/ end end @@ -84,7 +84,7 @@ SPEC Dir.chdir rails_app do - run "rake db:create db:migrate db:test:prepare" + run "rake db:migrate db:test:prepare" output = run "rake spec:acceptance" output.should =~ /1 example, 0 failures/ diff --git a/spec/acceptance/rspec-2/acceptance_helper.rb b/spec/acceptance/rspec-2/acceptance_helper.rb index 3e1b4bf..c694d13 100644 --- a/spec/acceptance/rspec-2/acceptance_helper.rb +++ b/spec/acceptance/rspec-2/acceptance_helper.rb @@ -17,7 +17,7 @@ def create_spec(options) def create_rails_app(options = {}) path = File.join(Dir.tmpdir, String.random, "rails_app") FileUtils.rm_rf path - `rails new #{path}` + run "rails new #{path}" FileUtils.rm_rf path + '/public/index.html' File.open(File.join(path, "Gemfile"), "a") do |file| file.write "\ngem 'rspec-rails', '>= 2.0.0.a9'\n" << @@ -29,19 +29,19 @@ def create_rails_app(options = {}) file.write "\ngem 'steak', :path => '#{File.expand_path(File.dirname(__FILE__) + '/../../..')}'\n" end - `bundle install` + run "bundle install" Dir.chdir path do - `rails generate rspec:install` + run "rails generate rspec:install" if options[:scaffold] - `rails generate scaffold #{options[:scaffold]}` - `rake db:create db:migrate db:test:prepare` + run "rails generate scaffold #{options[:scaffold]}" + run "rake db:migrate db:test:prepare" end end unless options[:setup_steak] == false Dir.chdir path do - `rails generate steak:install` + run "rails generate steak:install" end end @@ -51,13 +51,19 @@ def create_rails_app(options = {}) end module HelperMethods + def run(cmd) + `#{cmd} 2>&1`.tap do |o| + puts o if ENV['TRACE'] + end + end + def run_spec(file_path, app_base=nil) if app_base current_dir = Dir.pwd Dir.chdir app_base end - output = `rspec #{file_path} 2>&1` + output = run("rspec #{file_path}") Dir.chdir current_dir if app_base output diff --git a/spec/acceptance/rspec-2/rails_spec.rb b/spec/acceptance/rspec-2/rails_spec.rb index c7daf5d..5eae690 100644 --- a/spec/acceptance/rspec-2/rails_spec.rb +++ b/spec/acceptance/rspec-2/rails_spec.rb @@ -57,8 +57,8 @@ rails_app = create_rails_app Dir.chdir rails_app do - `rails generate steak:install` - `rake stats`.should =~ /Acceptance specs/ + run "rails generate steak:install" + run("rake stats").should =~ /Acceptance specs/ end end @@ -74,14 +74,14 @@ end end SPEC - + Dir.chdir rails_app do - `rake db:create db:migrate db:test:prepare` - - output = `rake spec:acceptance` + run "rake db:migrate db:test:prepare" + + output = run("rake spec:acceptance") output.should =~ /1 example, 0 failures/ - - output = `rake` + + output = run("rake") output.should =~ /1 example, 0 failures/ end end diff --git a/spec/acceptance/rspec-2/steak_install_generator_spec.rb b/spec/acceptance/rspec-2/steak_install_generator_spec.rb index fef9f92..0d74b3d 100644 --- a/spec/acceptance/rspec-2/steak_install_generator_spec.rb +++ b/spec/acceptance/rspec-2/steak_install_generator_spec.rb @@ -11,7 +11,7 @@ rails_app = create_rails_app(:setup_steak => false) Dir.chdir rails_app do - `rails generate steak:install` + run "rails generate steak:install" end File.exist?(rails_app + "/spec/acceptance/acceptance_helper.rb").should be_true @@ -24,7 +24,7 @@ rails_app = create_rails_app(:setup_steak => false, :scaffold => :users) Dir.chdir rails_app do - `rails generate steak:install` + run "rails generate steak:install" end spec_file = create_spec :path => rails_app + "/spec/acceptance", @@ -45,7 +45,7 @@ rails_app = create_rails_app(:setup_steak => false, :scaffold => :users) Dir.chdir rails_app do - `rails generate steak:install --webrat` + run "rails generate steak:install --webrat" end spec_file = create_spec :path => rails_app + "/spec/acceptance", diff --git a/spec/acceptance/rspec-2/steak_spec_generator_spec.rb b/spec/acceptance/rspec-2/steak_spec_generator_spec.rb index aab3fad..713c182 100644 --- a/spec/acceptance/rspec-2/steak_spec_generator_spec.rb +++ b/spec/acceptance/rspec-2/steak_spec_generator_spec.rb @@ -12,7 +12,7 @@ scenario "Adding new acceptance spec" do Dir.chdir @rails_app do - `rails generate steak:spec document_creation` + run "rails generate steak:spec document_creation" end File.exist?( @@ -22,7 +22,7 @@ scenario "Adding new acceptance spec (plural name)" do Dir.chdir @rails_app do - `rails generate steak:spec creating_documents` + run "rails generate steak:spec creating_documents" end File.exist?( @@ -32,7 +32,7 @@ scenario "Adding new acceptance spec (pascalized name)" do Dir.chdir @rails_app do - `rails generate steak:spec DocumentCreation` + run "rails generate steak:spec DocumentCreation" end File.exist?( @@ -42,7 +42,7 @@ scenario "Adding new acceptance spec (name ending with _spec)" do Dir.chdir @rails_app do - `rails generate steak:spec document_creation_spec` + run "rails generate steak:spec document_creation_spec" end File.exist?( @@ -52,7 +52,7 @@ scenario "Adding new acceptance spec (namespaced)" do Dir.chdir @rails_app do - `rails generate steak:spec document/creation_spec` + run "rails generate steak:spec document/creation_spec" end file_path = @rails_app + "/spec/acceptance/document/creation_spec.rb"