From 5786f36b624ec10c826953940c74f46041c2b50e Mon Sep 17 00:00:00 2001 From: Martin Afanasjew Date: Wed, 20 Jan 2016 07:06:09 +0100 Subject: [PATCH] tests: add --only=[/] flag Simplify running a single test (or even a single method from a single test), which is useful when developing or debugging a test. Instead of `brew test TEST=test_diagnostic.rb TESTOPTS=--name=test_check_DYLD_vars` it is now possible to run `brew tests --only=diagnostic/check_DYLD_vars` to get the same effect. Similarly, `brew tests --only=diagnostic` maps to `brew test TEST=test_diagnostic.rb`. Closes Homebrew/homebrew#48279. Signed-off-by: Martin Afanasjew --- Library/Homebrew/cmd/tests.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Library/Homebrew/cmd/tests.rb b/Library/Homebrew/cmd/tests.rb index 27be1cd2f8..19576ddd39 100644 --- a/Library/Homebrew/cmd/tests.rb +++ b/Library/Homebrew/cmd/tests.rb @@ -27,6 +27,11 @@ module Homebrew args = [] args << "--trace" if ARGV.include? "--trace" + if ARGV.value("only") + test_name, test_method = ARGV.value("only").split("/", 2) + args << "TEST=test_#{test_name}.rb" + args << "TESTOPTS=--name=test_#{test_method}" if test_method + end args += ARGV.named.select { |v| v[/^TEST(OPTS)?=/] } system "bundle", "exec", "rake", "test", *args