Class: TestLauncher::Queries::LineNumberQuery
Constant Summary
collapse
- LINE_SPLIT_REGEX =
/\A(?<file>.*):(?<line_number>\d+)\Z/
Instance Attribute Summary
Attributes inherited from BaseQuery
#request
Instance Method Summary
collapse
Methods inherited from BaseQuery
#initialize
Instance Method Details
#command ⇒ Object
345
346
347
348
349
350
351
352
353
354
355
356
|
# File 'lib/test_launcher/queries.rb', line 345
def command
return unless search_results.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
|
#search_results ⇒ Object
369
370
371
372
373
374
375
376
377
378
|
# File 'lib/test_launcher/queries.rb', line 369
def search_results
@search_results ||= begin
match = request.search_string.match(LINE_SPLIT_REGEX)
if match
searcher.by_line(match[:file], match[:line_number].to_i)
else
[]
end
end
end
|
#test_cases ⇒ Object
358
359
360
361
362
363
364
365
366
367
|
# File 'lib/test_launcher/queries.rb', line 358
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
|