class TestLauncher::Queries::LineNumberQuery

Constants

LINE_SPLIT_REGEX

Public Instance Methods

command() click to toggle source
# File lib/test_launcher/queries.rb, line 355
def command
  return unless match
  return unless test_cases.any?

  if one_file?
    shell.notify "Found #{pluralize(file_count, "file")}."
    runner.by_line_number(test_cases.first)
  else
    shell.notify "Found #{pluralize(file_count, "file")}."
    shell.notify "Cannot run all tests with --all because test frameworks don't accept multiple file/lines combos."
    runner.by_line_number(most_recently_edited_test_case)
  end
end
match() click to toggle source
# File lib/test_launcher/queries.rb, line 390
def match
  @match ||= request.search_string.match(LINE_SPLIT_REGEX)
end
search_results() click to toggle source
# File lib/test_launcher/queries.rb, line 380
def search_results
  @search_results ||= begin
    if match
      searcher.by_line(match[:file], match[:line_number].to_i)
    else
      []
    end
  end
end
test_cases() click to toggle source
# File lib/test_launcher/queries.rb, line 369
def test_cases
  @test_cases ||= search_results.map {|sr|
    request.test_case(
      file: sr[:file],
      line_number: sr[:line_number],
      example: sr[:example_name],
      request: request
    )
  }
end