From 176c82516f4d81d29d8354e99273afc8cd889338 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Tue, 20 Sep 2016 00:02:04 +0100 Subject: cask-tests: run in parallel --- Library/Homebrew/cask/cmd/brew-cask-tests.rb | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'Library/Homebrew/cask/cmd') diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb index 92ef3ddd9..20f343047 100755 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ b/Library/Homebrew/cask/cmd/brew-cask-tests.rb @@ -1,5 +1,9 @@ require "English" +def run_tests(executable, files, args = []) + system "bundle", "exec", executable, "--", *args, "--", *files +end + repo_root = Pathname(__FILE__).realpath.parent.parent repo_root.cd do ENV["HOMEBREW_NO_ANALYTICS_THIS_RUN"] = "1" @@ -9,12 +13,21 @@ repo_root.cd do system "bundle", "install", "--path", "vendor/bundle" end - test_task = "test" - %w[rspec minitest coverage].each do |subtask| - next unless ARGV.flag?("--#{subtask}") - test_task = "test:#{subtask}" + rspec = ARGV.flag?("--rspec") || !ARGV.flag?("--minitest") + minitest = ARGV.flag?("--minitest") || !ARGV.flag?("--rspec") + + ENV["TESTOPTS"] = "--seed=14830" if ENV["TRAVIS"] + ENV["HOMEBREW_TESTS_COVERAGE"] = "1" if ARGV.flag?("--coverage") + + run_tests "parallel_rspec", Dir["spec/**/*_spec.rb"] if rspec + run_tests "parallel_test", Dir["test/**/*_test.rb"] if minitest + + if ENV["CODECOV_TOKEN"] + require "simplecov" + require "codecov" + formatter = SimpleCov::Formatter::Codecov.new + formatter.format(SimpleCov::ResultMerger.merged_result) end - system "bundle", "exec", "rake", test_task Homebrew.failed = !$CHILD_STATUS.success? end -- cgit v1.2.3 From 1c4ae988232050ac22785fe062f3c912ed70cdfc Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Tue, 20 Sep 2016 13:16:11 +0100 Subject: tests, cask-tests: log test runtimes --- Library/Homebrew/cask/cmd/brew-cask-tests.rb | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'Library/Homebrew/cask/cmd') diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb index 20f343047..283b8516a 100755 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ b/Library/Homebrew/cask/cmd/brew-cask-tests.rb @@ -19,8 +19,17 @@ repo_root.cd do ENV["TESTOPTS"] = "--seed=14830" if ENV["TRAVIS"] ENV["HOMEBREW_TESTS_COVERAGE"] = "1" if ARGV.flag?("--coverage") - run_tests "parallel_rspec", Dir["spec/**/*_spec.rb"] if rspec - run_tests "parallel_test", Dir["test/**/*_test.rb"] if minitest + if rspec + run_tests "parallel_rspec", Dir["spec/**/*_spec.rb"], %w[ + --format progress + --format ParallelTests::RSpec::RuntimeLogger + --out tmp/parallel_runtime_rspec.log + ] + end + + if minitest + run_tests "parallel_test", Dir["test/**/*_test.rb"] + end if ENV["CODECOV_TOKEN"] require "simplecov" -- cgit v1.2.3 From 651303f62df934d61dd3c317b84b417537d91d8b Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Tue, 20 Sep 2016 13:48:38 +0100 Subject: cask-tests: re-add removed comment --- Library/Homebrew/cask/cmd/brew-cask-tests.rb | 3 +++ 1 file changed, 3 insertions(+) (limited to 'Library/Homebrew/cask/cmd') diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb index 283b8516a..019c3ca24 100755 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ b/Library/Homebrew/cask/cmd/brew-cask-tests.rb @@ -16,7 +16,10 @@ repo_root.cd do rspec = ARGV.flag?("--rspec") || !ARGV.flag?("--minitest") minitest = ARGV.flag?("--minitest") || !ARGV.flag?("--rspec") + # TODO: setting the --seed here is an ugly temporary hack, to remain only + # until test-suite glitches are fixed. ENV["TESTOPTS"] = "--seed=14830" if ENV["TRAVIS"] + ENV["HOMEBREW_TESTS_COVERAGE"] = "1" if ARGV.flag?("--coverage") if rspec -- cgit v1.2.3 From 869fb0214971f3dbcccbe1915702ffc7e7d69d16 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Tue, 20 Sep 2016 14:57:08 +0100 Subject: tests, cask-tests: serialize stdout on CI --- Library/Homebrew/cask/cmd/brew-cask-tests.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'Library/Homebrew/cask/cmd') diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb index 019c3ca24..2523061a2 100755 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ b/Library/Homebrew/cask/cmd/brew-cask-tests.rb @@ -1,7 +1,10 @@ require "English" def run_tests(executable, files, args = []) - system "bundle", "exec", executable, "--", *args, "--", *files + opts = [] + opts << "--serialize-stdout" if ENV["CI"] + + system "bundle", "exec", executable, *opts, "--", *args, "--", *files end repo_root = Pathname(__FILE__).realpath.parent.parent -- cgit v1.2.3 From ad17bbff9c59ef5d0490e6af317f7ce2d3069f69 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Tue, 20 Sep 2016 16:39:16 +0100 Subject: cask-tests: fix loading simplecov --- Library/Homebrew/cask/cmd/brew-cask-tests.rb | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'Library/Homebrew/cask/cmd') diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb index 2523061a2..19a21275e 100755 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ b/Library/Homebrew/cask/cmd/brew-cask-tests.rb @@ -38,10 +38,7 @@ repo_root.cd do end if ENV["CODECOV_TOKEN"] - require "simplecov" - require "codecov" - formatter = SimpleCov::Formatter::Codecov.new - formatter.format(SimpleCov::ResultMerger.merged_result) + system "bundle", "exec", "rake", "test:coverage:upload" end Homebrew.failed = !$CHILD_STATUS.success? -- cgit v1.2.3 From 5c5c416d1cb2df75f430c30a8044c82e041f530c Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Wed, 21 Sep 2016 23:26:42 +0100 Subject: cask-tests: remove Travis seed This hack has been in Homebrew Cask for more than two years (since 51f93e6dc9c3da4ab2118459ea95e45c104386ec), and it originated even earlier (6d2f7bc55af0b2aa915b2396d213e30a4446256c). Cask tests apparently aren't even run on Travis anymore, so this can be safely removed. --- Library/Homebrew/cask/cmd/brew-cask-tests.rb | 4 ---- 1 file changed, 4 deletions(-) (limited to 'Library/Homebrew/cask/cmd') diff --git a/Library/Homebrew/cask/cmd/brew-cask-tests.rb b/Library/Homebrew/cask/cmd/brew-cask-tests.rb index 19a21275e..7ae71020e 100755 --- a/Library/Homebrew/cask/cmd/brew-cask-tests.rb +++ b/Library/Homebrew/cask/cmd/brew-cask-tests.rb @@ -19,10 +19,6 @@ repo_root.cd do rspec = ARGV.flag?("--rspec") || !ARGV.flag?("--minitest") minitest = ARGV.flag?("--minitest") || !ARGV.flag?("--rspec") - # TODO: setting the --seed here is an ugly temporary hack, to remain only - # until test-suite glitches are fixed. - ENV["TESTOPTS"] = "--seed=14830" if ENV["TRAVIS"] - ENV["HOMEBREW_TESTS_COVERAGE"] = "1" if ARGV.flag?("--coverage") if rspec -- cgit v1.2.3