matrix_test.rb in capybara-screenshot-diff-0.15.1 vs matrix_test.rb in capybara-screenshot-diff-1.0.0

- old
+ new

@@ -1,6 +1,7 @@ #!/usr/bin/env ruby -w +# frozen_string_literal: true system('rubocop --auto-correct') || exit(1) update_gemfiles = ARGV.delete('--update') @@ -13,40 +14,44 @@ end puts '*' * 80 puts "Testing #{ruby} #{gemfile} #{env}" puts system("chruby-exec #{ruby} -- bundle exec rake") || exit(1) + puts "Testing #{ruby} #{gemfile} OK" puts '*' * 80 end def use_gemfile(ruby, gemfile, update_gemfiles) puts '$' * 80 - puts "Testing #{gemfile}" - puts ENV['BUNDLE_GEMFILE'] = gemfile + + bundler_version = `grep -A1 "BUNDLED WITH" #{gemfile}.lock | tail -n 1` + bundler_version = '~> 2.0' if bundler_version.strip.empty? + + version_arg = "-v '#{bundler_version}'" + bundler_gem_check_cmd = "chruby-exec #{ruby} -- gem query -i -n bundler #{version_arg} >/dev/null" + system "#{bundler_gem_check_cmd} || chruby-exec #{ruby} -- gem install #{version_arg} bundler" || exit(1) + if update_gemfiles system "chruby-exec #{ruby} -- bundle update" else - system "chruby-exec #{ruby} -- bundle check || chruby-exec #{ruby} -- bundle install" + system "chruby-exec #{ruby} -- bundle check >/dev/null || chruby-exec #{ruby} -- bundle install" end || exit(1) yield - puts "Testing #{gemfile} OK" puts '$' * 80 end travis['rvm'].each do |ruby| next if ruby =~ /head/ # ruby-install does not support HEAD installation puts '#' * 80 puts "Testing #{ruby}" puts system "ruby-install --no-reinstall #{ruby}" || exit(1) - bundler_gem_check_cmd = "chruby-exec #{ruby} -- gem query -i -n bundler >/dev/null" - system "#{bundler_gem_check_cmd} || chruby-exec #{ruby} -- gem install bundler" || exit(1) travis['gemfile'].each do |gemfile| if travis['matrix'] && - (travis['matrix']['exclude'].to_a + travis['matrix']['allowed_failures'].to_a) - .any? { |f| f['rvm'] == ruby && f['gemfile'] == gemfile } + (travis['matrix']['exclude'].to_a + travis['matrix']['allow_failures'].to_a) + .any? { |f| f['rvm'] == ruby && (f['gemfile'].nil? || f['gemfile'] == gemfile) } puts 'Skipping known failure.' next end use_gemfile(ruby, gemfile, update_gemfiles) do travis['env'].each do |env|