From 508aad17874ad6b12e7ec252b2a112191a0bfeba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Re=CC=81my=20Coutable?= Date: Thu, 21 Jul 2011 01:42:32 +0200 Subject: [PATCH] I don't like the failed specs to always come back! Use the RSpec documentation formatter & tuned the spec:portability task to tests against the same Ruby version tested on Travis CI --- Guardfile | 2 +- Rakefile | 22 ++++++++++++++++++---- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/Guardfile b/Guardfile index 2804e8f..7cd30ab 100644 --- a/Guardfile +++ b/Guardfile @@ -1,4 +1,4 @@ -guard :rspec, :version => 2 do +guard :rspec, :version => 2, :keep_failed => false, :cli => '-f doc' do watch(%r{^spec/.+_spec\.rb$}) watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" } watch('spec/spec_helper.rb') { "spec" } diff --git a/Rakefile b/Rakefile index 0cf85d6..d1b2f28 100644 --- a/Rakefile +++ b/Rakefile @@ -14,19 +14,33 @@ namespace(:spec) do system "cmd /c echo -----------#{version}------------ & " + "pik use #{version} & " + "bundle install & " + - "bundle exec rake spec" + "bundle exec rspec spec" end end else desc "Run all specs on multiple ruby versions (requires rvm)" task(:portability) do - %w[1.8.7 1.9.2 ree].each do |version| + travis_config_file = File.expand_path("../.travis.yml", __FILE__) + begin + travis_options ||= YAML::load_file(travis_config_file) + rescue => ex + puts "Travis config file '#{travis_config_file}' could not be found: #{ex.message}" + return + end + + travis_options['rvm'].each do |version| system <<-BASH bash -c 'source ~/.rvm/scripts/rvm; rvm #{version}; - echo "--------- version #{version} ----------\n"; + ruby_version_string_size=`ruby -v | wc -m` + echo; + for ((c=1; c<$ruby_version_string_size; c++)); do echo -n "="; done + echo; + echo "`ruby -v`"; + for ((c=1; c<$ruby_version_string_size; c++)); do echo -n "="; done + echo; bundle install; - bundle exec rake spec' + bundle exec rspec spec -f doc 2>&1;' BASH end end