class TestLauncher::Queries::MultiExampleNameQuery

Public Instance Methods

command() click to toggle source
# File lib/test_launcher/queries.rb, line 263
def command
  return if test_cases.empty?

  if one_example?
    shell.notify("Found 1 example in 1 file.")
    runner.single_example(test_cases.first)
  elsif one_file?
    shell.notify("Found #{test_cases.size} examples in 1 file.")
    runner.multiple_examples_same_file(test_cases) # it will regex with the query
  else
    shell.notify "Found #{pluralize(test_cases.size, "example")} in #{pluralize(file_count, "file")}."
    runner.multiple_examples(test_cases)
  end
end
examples_found() click to toggle source
# File lib/test_launcher/queries.rb, line 291
def examples_found
  @examples_found_by_joining_query ||= searcher.examples(joined_query)
end
joined_query() click to toggle source
# File lib/test_launcher/queries.rb, line 295
def joined_query
  @joined_query ||= request.search_string.squeeze(" ").gsub(" ", "|")
end
one_example?() click to toggle source
# File lib/test_launcher/queries.rb, line 299
def one_example?
  test_cases.size == 1
end
test_cases() click to toggle source
# File lib/test_launcher/queries.rb, line 278
def test_cases
  return [] if joined_query == request.search_string

  @test_cases_found_by_joining_query ||= examples_found.map { |grep_result|
    request.test_case(
      file: grep_result[:file],
      example: joined_query,
      line_number: grep_result[:line_number],
      request: request
    )
  }
end