From 4944d43d580140af94c0b19a7dbb50bb36b7593a Mon Sep 17 00:00:00 2001 From: Markus Reiter <me@reitermark.us> Date: Sun, 5 Mar 2017 08:06:45 +0100 Subject: [PATCH] Move coverage reporting into `brew tests`. --- Library/Homebrew/.simplecov | 2 -- Library/Homebrew/cask/.simplecov | 1 - Library/Homebrew/cask/cmd/brew-cask-tests.rb | 33 ------------------- Library/Homebrew/cask/spec/upload_coverage.rb | 6 ---- Library/Homebrew/test/spec_helper.rb | 15 +++++++++ 5 files changed, 15 insertions(+), 42 deletions(-) delete mode 120000 Library/Homebrew/cask/.simplecov delete mode 100755 Library/Homebrew/cask/cmd/brew-cask-tests.rb delete mode 100755 Library/Homebrew/cask/spec/upload_coverage.rb diff --git a/Library/Homebrew/.simplecov b/Library/Homebrew/.simplecov index d2e00cf469..23e60faeb0 100755 --- a/Library/Homebrew/.simplecov +++ b/Library/Homebrew/.simplecov @@ -11,8 +11,6 @@ SimpleCov.start do # tests to be dropped. This causes random fluctuations in test coverage. merge_timeout 86400 - add_filter "/Homebrew/cask/spec/" - add_filter "/Homebrew/cask/test/" add_filter "/Homebrew/compat/" add_filter "/Homebrew/dev-cmd/tests.rb" add_filter "/Homebrew/test/" diff --git a/Library/Homebrew/cask/.simplecov b/Library/Homebrew/cask/.simplecov deleted file mode 120000 index 75a078be4a..0000000000 --- a/Library/Homebrew/cask/.simplecov +++ /dev/null @@ -1 +0,0 @@ -../.simplecov \ No newline at end of file diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb deleted file mode 100755 index a1006b7efb..0000000000 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ /dev/null @@ -1,33 +0,0 @@ -require "English" - -ENV["BUNDLE_GEMFILE"] = "#{HOMEBREW_LIBRARY_PATH}/cask/Gemfile" -ENV["BUNDLE_PATH"] = "#{HOMEBREW_LIBRARY_PATH}/vendor/bundle" - -def run_tests(executable, files, args = []) - opts = [] - opts << "--serialize-stdout" if ENV["CI"] - - system "bundle", "exec", executable, *opts, "--", *args, "--", *files -end - -cask_root = Pathname.new(__FILE__).realpath.parent.parent -cask_root.cd do - ENV["HOMEBREW_NO_ANALYTICS_THIS_RUN"] = "1" - ENV["HOMEBREW_NO_EMOJI"] = "1" - ENV.delete("HOMEBREW_CASK_OPTS") - - Homebrew.install_gem_setup_path! "bundler" - unless quiet_system("bundle", "check") - system "bundle", "install" - end - - if ARGV.flag?("--coverage") - ENV["HOMEBREW_TESTS_COVERAGE"] = "1" - upload_coverage = ENV["CODECOV_TOKEN"] || ENV["TRAVIS"] - end - - if upload_coverage - puts "Submitting Codecov coverage..." - system "bundle", "exec", "spec/upload_coverage.rb" - end -end diff --git a/Library/Homebrew/cask/spec/upload_coverage.rb b/Library/Homebrew/cask/spec/upload_coverage.rb deleted file mode 100755 index 06d38157dd..0000000000 --- a/Library/Homebrew/cask/spec/upload_coverage.rb +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env ruby -require "simplecov" -require "codecov" - -formatter = SimpleCov::Formatter::Codecov.new -formatter.format SimpleCov::ResultMerger.merged_result diff --git a/Library/Homebrew/test/spec_helper.rb b/Library/Homebrew/test/spec_helper.rb index 4616d77082..af414b1459 100644 --- a/Library/Homebrew/test/spec_helper.rb +++ b/Library/Homebrew/test/spec_helper.rb @@ -1,4 +1,5 @@ require "find" +require "parallel_tests" require "pathname" require "rspec/its" require "rspec/wait" @@ -6,6 +7,20 @@ require "set" if ENV["HOMEBREW_TESTS_COVERAGE"] require "simplecov" + + if ENV["CODECOV_TOKEN"] || ENV["TRAVIS"] + require "codecov" + + if ParallelTests.last_process? + at_exit do + ParallelTests.wait_for_other_processes_to_finish + + puts "Sending coverage report to CodeCov 鈥�" + formatter = SimpleCov::Formatter::Codecov.new + formatter.format SimpleCov::ResultMerger.merged_result + end + end + end end $LOAD_PATH.unshift(File.expand_path("#{ENV["HOMEBREW_LIBRARY"]}/Homebrew")) -- GitLab