test_launcher 1.5.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +18 -0
  3. data/bin/test_launcher +2 -5
  4. data/lib/test_launcher/cli/input_parser.rb +37 -12
  5. data/lib/test_launcher/cli/query.rb +30 -0
  6. data/lib/test_launcher/cli/request.rb +61 -0
  7. data/lib/test_launcher/cli.rb +44 -0
  8. data/lib/test_launcher/frameworks/base.rb +26 -7
  9. data/lib/test_launcher/frameworks/elixir.rb +84 -0
  10. data/lib/test_launcher/frameworks/implementation/test_case.rb +4 -7
  11. data/lib/test_launcher/frameworks/minitest.rb +80 -23
  12. data/lib/test_launcher/frameworks/rspec.rb +38 -13
  13. data/lib/test_launcher/queries.rb +346 -0
  14. data/lib/test_launcher/rubymine/launcher.rb +1 -12
  15. data/lib/test_launcher/rubymine/request.rb +15 -0
  16. data/lib/test_launcher/rubymine.rb +20 -13
  17. data/lib/test_launcher/search/ag.rb +96 -0
  18. data/lib/test_launcher/search/git.rb +6 -2
  19. data/lib/test_launcher/search.rb +18 -0
  20. data/lib/test_launcher/shell/runner.rb +2 -1
  21. data/lib/test_launcher/version.rb +1 -1
  22. data/lib/test_launcher.rb +0 -26
  23. data/test/test_helper.rb +2 -1
  24. data/test/test_helpers/integration_helper.rb +40 -0
  25. data/test/test_helpers/mock.rb +59 -0
  26. data/test/test_helpers/mock_searcher.rb +1 -0
  27. data/test/test_helpers/mocks/searcher_mock.rb +82 -0
  28. data/test/test_helpers/mocks.rb +76 -0
  29. data/test/test_launcher/cli/input_parser_test.rb +72 -0
  30. data/test/test_launcher/frameworks/minitest/runner_test.rb +72 -0
  31. data/test/test_launcher/frameworks/minitest/searcher_test.rb +109 -0
  32. data/test/test_launcher/frameworks/rspec/runner_test.rb +76 -0
  33. data/test/test_launcher/frameworks/rspec/searcher_test.rb +54 -0
  34. data/test/test_launcher/minitest_integration_test.rb +31 -40
  35. data/test/test_launcher/queries/example_name_query_test.rb +217 -0
  36. data/test/test_launcher/queries/full_regex_query_test.rb +153 -0
  37. data/test/test_launcher/queries/generic_query_test.rb +23 -0
  38. data/test/test_launcher/queries/line_number_query_test.rb +107 -0
  39. data/test/test_launcher/queries/multi_term_query_test.rb +138 -0
  40. data/test/test_launcher/queries/path_query_test.rb +192 -0
  41. data/test/test_launcher/queries/search_query_test.rb +54 -0
  42. data/test/test_launcher/queries/single_term_query_test.rb +36 -0
  43. data/test/test_launcher/queries/specified_name_query_test.rb +112 -0
  44. data/test/test_launcher/rspec_integration_test.rb +27 -41
  45. data/test/test_launcher/search/git_test.rb +2 -0
  46. metadata +49 -10
  47. data/lib/test_launcher/frameworks/implementation/collection.rb +0 -36
  48. data/lib/test_launcher/frameworks/implementation/consolidator.rb +0 -83
  49. data/lib/test_launcher/frameworks/implementation/locator.rb +0 -118
  50. data/lib/test_launcher/frameworks.rb +0 -20
  51. data/lib/test_launcher/request.rb +0 -36
  52. data/test/test_launcher/frameworks/implementation/locator_test.rb +0 -166
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test_launcher
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pete Kinnecom
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-24 00:00:00.000000000 Z
11
+ date: 2017-01-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -54,24 +54,33 @@ files:
54
54
  - bin/test_launcher
55
55
  - lib/test_launcher.rb
56
56
  - lib/test_launcher/base_error.rb
57
+ - lib/test_launcher/cli.rb
57
58
  - lib/test_launcher/cli/input_parser.rb
58
- - lib/test_launcher/frameworks.rb
59
+ - lib/test_launcher/cli/query.rb
60
+ - lib/test_launcher/cli/request.rb
59
61
  - lib/test_launcher/frameworks/base.rb
60
- - lib/test_launcher/frameworks/implementation/collection.rb
61
- - lib/test_launcher/frameworks/implementation/consolidator.rb
62
- - lib/test_launcher/frameworks/implementation/locator.rb
62
+ - lib/test_launcher/frameworks/elixir.rb
63
63
  - lib/test_launcher/frameworks/implementation/test_case.rb
64
64
  - lib/test_launcher/frameworks/minitest.rb
65
65
  - lib/test_launcher/frameworks/rspec.rb
66
- - lib/test_launcher/request.rb
66
+ - lib/test_launcher/queries.rb
67
67
  - lib/test_launcher/rubymine.rb
68
68
  - lib/test_launcher/rubymine/launcher.rb
69
+ - lib/test_launcher/rubymine/request.rb
70
+ - lib/test_launcher/search.rb
71
+ - lib/test_launcher/search/ag.rb
69
72
  - lib/test_launcher/search/git.rb
70
73
  - lib/test_launcher/shell/color.rb
71
74
  - lib/test_launcher/shell/runner.rb
72
75
  - lib/test_launcher/version.rb
73
76
  - test/install
74
77
  - test/test_helper.rb
78
+ - test/test_helpers/integration_helper.rb
79
+ - test/test_helpers/mock.rb
80
+ - test/test_helpers/mock_searcher.rb
81
+ - test/test_helpers/mocks.rb
82
+ - test/test_helpers/mocks/searcher_mock.rb
83
+ - test/test_launcher/cli/input_parser_test.rb
75
84
  - test/test_launcher/fixtures/minitest/Gemfile
76
85
  - test/test_launcher/fixtures/minitest/test/class_1_test.rb
77
86
  - test/test_launcher/fixtures/minitest/test/class_2_test.rb
@@ -83,9 +92,21 @@ files:
83
92
  - test/test_launcher/fixtures/rspec/spec/class_2_spec.rb
84
93
  - test/test_launcher/fixtures/rspec/spec/different_root/Gemfile
85
94
  - test/test_launcher/fixtures/rspec/spec/different_root/spec/different_root_spec.rb
86
- - test/test_launcher/frameworks/implementation/locator_test.rb
87
95
  - test/test_launcher/frameworks/implementation/test_case_test.rb
96
+ - test/test_launcher/frameworks/minitest/runner_test.rb
97
+ - test/test_launcher/frameworks/minitest/searcher_test.rb
98
+ - test/test_launcher/frameworks/rspec/runner_test.rb
99
+ - test/test_launcher/frameworks/rspec/searcher_test.rb
88
100
  - test/test_launcher/minitest_integration_test.rb
101
+ - test/test_launcher/queries/example_name_query_test.rb
102
+ - test/test_launcher/queries/full_regex_query_test.rb
103
+ - test/test_launcher/queries/generic_query_test.rb
104
+ - test/test_launcher/queries/line_number_query_test.rb
105
+ - test/test_launcher/queries/multi_term_query_test.rb
106
+ - test/test_launcher/queries/path_query_test.rb
107
+ - test/test_launcher/queries/search_query_test.rb
108
+ - test/test_launcher/queries/single_term_query_test.rb
109
+ - test/test_launcher/queries/specified_name_query_test.rb
89
110
  - test/test_launcher/rspec_integration_test.rb
90
111
  - test/test_launcher/rubymine_test.rb
91
112
  - test/test_launcher/search/git_test.rb
@@ -110,13 +131,19 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
131
  version: '0'
111
132
  requirements: []
112
133
  rubyforge_project:
113
- rubygems_version: 2.4.5.1
134
+ rubygems_version: 2.5.2
114
135
  signing_key:
115
136
  specification_version: 4
116
137
  summary: Easily run tests
117
138
  test_files:
118
139
  - test/install
119
140
  - test/test_helper.rb
141
+ - test/test_helpers/integration_helper.rb
142
+ - test/test_helpers/mock.rb
143
+ - test/test_helpers/mock_searcher.rb
144
+ - test/test_helpers/mocks.rb
145
+ - test/test_helpers/mocks/searcher_mock.rb
146
+ - test/test_launcher/cli/input_parser_test.rb
120
147
  - test/test_launcher/fixtures/minitest/Gemfile
121
148
  - test/test_launcher/fixtures/minitest/test/class_1_test.rb
122
149
  - test/test_launcher/fixtures/minitest/test/class_2_test.rb
@@ -128,9 +155,21 @@ test_files:
128
155
  - test/test_launcher/fixtures/rspec/spec/class_2_spec.rb
129
156
  - test/test_launcher/fixtures/rspec/spec/different_root/Gemfile
130
157
  - test/test_launcher/fixtures/rspec/spec/different_root/spec/different_root_spec.rb
131
- - test/test_launcher/frameworks/implementation/locator_test.rb
132
158
  - test/test_launcher/frameworks/implementation/test_case_test.rb
159
+ - test/test_launcher/frameworks/minitest/runner_test.rb
160
+ - test/test_launcher/frameworks/minitest/searcher_test.rb
161
+ - test/test_launcher/frameworks/rspec/runner_test.rb
162
+ - test/test_launcher/frameworks/rspec/searcher_test.rb
133
163
  - test/test_launcher/minitest_integration_test.rb
164
+ - test/test_launcher/queries/example_name_query_test.rb
165
+ - test/test_launcher/queries/full_regex_query_test.rb
166
+ - test/test_launcher/queries/generic_query_test.rb
167
+ - test/test_launcher/queries/line_number_query_test.rb
168
+ - test/test_launcher/queries/multi_term_query_test.rb
169
+ - test/test_launcher/queries/path_query_test.rb
170
+ - test/test_launcher/queries/search_query_test.rb
171
+ - test/test_launcher/queries/single_term_query_test.rb
172
+ - test/test_launcher/queries/specified_name_query_test.rb
134
173
  - test/test_launcher/rspec_integration_test.rb
135
174
  - test/test_launcher/rubymine_test.rb
136
175
  - test/test_launcher/search/git_test.rb
@@ -1,36 +0,0 @@
1
- require "delegate"
2
-
3
- module TestLauncher
4
- module Frameworks
5
- module Implementation
6
- class Collection < SimpleDelegator
7
- alias :results :__getobj__
8
-
9
- def initialize(results:, run_all:)
10
- super(results)
11
- @run_all = run_all
12
- end
13
-
14
- def file_count
15
- results.group_by(&:file).size
16
- end
17
-
18
- def one_example?
19
- examples_found? && results.size == 1
20
- end
21
-
22
- def examples_found?
23
- results.any?(&:is_example?)
24
- end
25
-
26
- def last_edited
27
- results.sort_by(&:mtime).last
28
- end
29
-
30
- def run_all?
31
- @run_all
32
- end
33
- end
34
- end
35
- end
36
- end
@@ -1,83 +0,0 @@
1
- module TestLauncher
2
- module Frameworks
3
- module Implementation
4
- class Consolidator < Struct.new(:search_results, :shell, :runner)
5
-
6
- def self.consolidate(*args)
7
- new(*args).consolidate
8
- end
9
-
10
- def consolidate
11
- if search_results.empty?
12
- nil
13
- elsif one_example?
14
- shell.notify "Found #{methods_count_phrase} in #{file_count_phrase}."
15
- runner.single_example(search_results.first)
16
- elsif examples_found? && same_file?
17
- shell.notify "Multiple test methods match in 1 file."
18
- runner.single_example(search_results.first)
19
- elsif examples_found? && run_last_edited?
20
- shell.notify "Found #{methods_count_phrase} in #{file_count_phrase}."
21
- shell.notify "Running most recently edited. Run with '--all' to run all the tests."
22
- runner.single_example(last_edited)
23
- elsif files_found? && same_file?
24
- shell.notify "Found #{file_count_phrase}."
25
- runner.single_file(search_results.first)
26
- elsif files_found? && run_last_edited?
27
- shell.notify "Found #{file_count_phrase}."
28
- shell.notify "Running most recently edited. Run with '--all' to run all the tests."
29
- runner.single_file(last_edited)
30
- else
31
- shell.notify "Found #{file_count_phrase}."
32
- runner.multiple_files(search_results.uniq {|sr| sr.file})
33
- end
34
- end
35
-
36
- def same_file?
37
- file_count == 1
38
- end
39
-
40
- def one_example?
41
- search_results.one_example?
42
- end
43
-
44
- def examples_found?
45
- search_results.examples_found?
46
- end
47
-
48
- def files_found?
49
- ! examples_found?
50
- end
51
-
52
- def run_last_edited?
53
- ! search_results.run_all?
54
- end
55
-
56
- def last_edited
57
- search_results.last_edited
58
- end
59
-
60
- def file_count
61
- search_results.file_count
62
- end
63
-
64
- def methods_count_phrase
65
- pluralize(search_results.size, "test method")
66
- end
67
-
68
- def file_count_phrase
69
- pluralize(file_count, "file")
70
- end
71
-
72
- def pluralize(count, singular)
73
- phrase = "#{count} #{singular}"
74
- if count == 1
75
- phrase
76
- else
77
- "#{phrase}s"
78
- end
79
- end
80
- end
81
- end
82
- end
83
- end
@@ -1,118 +0,0 @@
1
- require "test_launcher/base_error"
2
- require "test_launcher/frameworks/implementation/test_case"
3
- require "test_launcher/frameworks/implementation/collection"
4
-
5
- module TestLauncher
6
- module Frameworks
7
- module Implementation
8
- UnsupportedSearchError = Class.new(BaseError)
9
-
10
- class Locator < Struct.new(:request, :searcher)
11
- private :request, :searcher
12
-
13
- def prioritized_results
14
- return files_found_by_path unless files_found_by_path.empty?
15
-
16
- return examples_found_by_name unless examples_found_by_name.empty?
17
-
18
- return files_found_by_file_name_regex unless files_found_by_file_name_regex.empty?
19
-
20
- return files_found_by_full_regex unless files_found_by_full_regex.empty?
21
-
22
- []
23
- end
24
-
25
- private
26
-
27
- def files_found_by_path
28
- # TODO: this needs some love
29
-
30
- @files_found_by_path ||= begin
31
- potential_file_paths = request.query.split(" ")
32
- if potential_file_paths.all? {|fp| fp.match(file_name_regex)}
33
-
34
- found_files = potential_file_paths.map {|fp| searcher.find_files(fp) }
35
- if found_files.any?(&:empty?)
36
- raise UnsupportedSearchError, file_term_failure_message
37
- end
38
-
39
- Collection.new(
40
- results: found_files.flatten.map {|fp| build_result(file: fp)},
41
- run_all: request.run_all? || potential_file_paths.size > 1
42
- )
43
- else
44
- []
45
- end
46
- end
47
- end
48
-
49
- def examples_found_by_name
50
- @examples_found_by_name ||= Collection.new(
51
- results: full_regex_search(regex_pattern).map {|r| build_result(file: r[:file], query: request.query)},
52
- run_all: request.run_all?
53
- )
54
- end
55
-
56
- def files_found_by_file_name_regex
57
- @files_found_by_file_name_regex ||= begin
58
- potential_file_paths = request.query.split(" ")
59
- split_query_results = potential_file_paths.map {|fp| searcher.find_files(fp).select {|f| f.match(file_name_regex) } }
60
-
61
- return [] if split_query_results.any?(&:empty?)
62
-
63
- Collection.new(
64
- results: split_query_results.flatten.map {|f| build_result(file: f) },
65
- run_all: true,
66
- )
67
- end
68
- end
69
-
70
- def files_found_by_full_regex
71
- # we ignore the matched line since we don't know what to do with it
72
- @files_found_by_full_regex ||= Collection.new(
73
- results: full_regex_search(request.query).map {|r| build_result(file: r[:file]) },
74
- run_all: request.run_all?
75
- )
76
- end
77
-
78
- def full_regex_search(regex)
79
- searcher.grep(regex, file_pattern: file_name_pattern)
80
- end
81
-
82
- def build_result(file:, query: nil)
83
- test_case_class.from_search(file: file, query: query, request: request)
84
- end
85
-
86
- def file_name_regex
87
- raise NotImplementedError
88
- end
89
-
90
- def file_name_pattern
91
- raise NotImplementedError
92
- end
93
-
94
- def regex_pattern
95
- raise NotImplementedError
96
- end
97
-
98
- def test_case_class
99
- raise NotImplementedError
100
- end
101
-
102
- def file_term_failure_message
103
- <<-MSG
104
- At least one of your search terms was identified as a file.
105
-
106
- At least one of your *other* search terms was identified to not be a file.
107
-
108
- This is a case that is not currently supported.
109
-
110
- It is possible that one of the test files you wish to run is not currently known to git (e.g. it is ignored or unstaged)
111
-
112
- If that's not the case, let me know what you're trying to do by filing an issue at http://github.com/petekinnecom/test_launcher/issues
113
- MSG
114
- end
115
- end
116
- end
117
- end
118
- end
@@ -1,20 +0,0 @@
1
- require "test_launcher/frameworks/implementation/consolidator"
2
-
3
-
4
- module TestLauncher
5
- module Frameworks
6
- def self.locate(request:, shell:, searcher:)
7
- request.frameworks.each do |framework|
8
- search_results = framework::Locator.new(request, searcher).prioritized_results
9
- runner = framework::Runner.new
10
-
11
- command = Implementation::Consolidator.consolidate(search_results, shell, runner)
12
-
13
- return command if command
14
- end
15
-
16
- nil
17
- end
18
-
19
- end
20
- end
@@ -1,36 +0,0 @@
1
- require "test_launcher/frameworks/minitest"
2
- require "test_launcher/frameworks/rspec"
3
-
4
- module TestLauncher
5
- class Request
6
- def initialize(query:, framework: "guess", run_all: false, disable_spring: false)
7
- @query = query
8
- @framework = framework
9
- @run_all = run_all
10
- @disable_spring = disable_spring
11
- end
12
-
13
- def query
14
- @query
15
- end
16
-
17
- def run_all?
18
- @run_all
19
- end
20
-
21
- def disable_spring?
22
- @disable_spring
23
- end
24
-
25
- def frameworks
26
- if @framework == "rspec"
27
- [Frameworks::RSpec]
28
- elsif @framework == "minitest"
29
- [Frameworks::Minitest]
30
- else
31
- [Frameworks::Minitest, Frameworks::RSpec].select(&:active?)
32
- end
33
- end
34
-
35
- end
36
- end
@@ -1,166 +0,0 @@
1
- require "test_helper"
2
- require "test_launcher/frameworks/implementation/test_case"
3
- require "test_launcher/frameworks/implementation/locator"
4
-
5
- module TestLauncher
6
- module Frameworks
7
- module Implementation
8
- class LocatorTest < ::TestCase
9
- class DummyTestCase < Implementation::TestCase
10
- end
11
-
12
- class DummyLocator < Implementation::Locator
13
- def file_name_regex
14
- /_test.rb/
15
- end
16
-
17
- def file_name_pattern
18
- "*"
19
- end
20
-
21
- def regex_pattern
22
- /.*/
23
- end
24
-
25
- def test_case_class
26
- DummyTestCase
27
- end
28
- end
29
-
30
- def test_prioritized_results__files_found_by_path__does_not_run_if_not_matching_regex__one_arg
31
- searcher = mock {
32
- stubs(:grep).returns([{file: "dummy_result"}])
33
- expects(:find_files).never
34
- }
35
-
36
- request = stub(query: "file_not_matching_regex.js", run_all?: false)
37
-
38
- locator = DummyLocator.new(request, searcher)
39
-
40
- assert_equal 1, locator.prioritized_results.file_count
41
-
42
- result = locator.prioritized_results.first
43
- assert_equal "dummy_result", result.file
44
- end
45
-
46
- def test_prioritized_results__files_found_by_path__does_not_run_if_not_matching_regex__all_args
47
- searcher = mock {
48
- stubs(:grep).returns([{file: "dummy_result"}])
49
- expects(:find_files).never
50
- }
51
-
52
- request = stub(query: "matching_test.rb non_matching.js", run_all?: false)
53
-
54
- locator = DummyLocator.new(request, searcher)
55
-
56
- assert_equal 1, locator.prioritized_results.file_count
57
-
58
- result = locator.prioritized_results.first
59
- assert_equal "dummy_result", result.file
60
- end
61
-
62
- def test_prioritized_results__files_found_by_path__uses_searcher_if_all_files_match_regex
63
- searcher = mock {
64
- expects(:find_files).with("matching_test.rb").returns(["/path/to/matching_test.rb"])
65
- }
66
-
67
- request = stub(query: "matching_test.rb ", run_all?: false)
68
-
69
- locator = DummyLocator.new(request, searcher)
70
-
71
- assert_equal 1, locator.prioritized_results.file_count
72
-
73
- result = locator.prioritized_results.first
74
- assert_equal "/path/to/matching_test.rb", result.file
75
- end
76
-
77
- def test_prioritized_results__files_found_by_path__uses_searcher_if_all_files_match_regex__multiple_results
78
- searcher = mock {
79
- expects(:find_files).with("matching_test.rb").returns(["/path1/to/matching_test.rb", "/path2/to/matching_test.rb"])
80
- }
81
-
82
- request = stub(query: "matching_test.rb ", run_all?: false)
83
-
84
- locator = DummyLocator.new(request, searcher)
85
-
86
- assert_equal 2, locator.prioritized_results.file_count
87
-
88
- assert_equal "/path1/to/matching_test.rb", locator.prioritized_results.first.file
89
- assert_equal "/path2/to/matching_test.rb", locator.prioritized_results.last.file
90
- end
91
-
92
- def test_prioritized_results__files_found_by_path__uses_searcher_if_all_files_match_regex__multiple_args
93
- searcher = mock {
94
- expects(:find_files).with("matching_1_test.rb").returns(["/path1/to/matching_1_test.rb", "/path2/to/matching_1_test.rb"])
95
- expects(:find_files).with("matching_2_test.rb").returns(["/path1/to/matching_2_test.rb", "/path2/to/matching_2_test.rb"])
96
- }
97
-
98
- request = stub(query: "matching_1_test.rb matching_2_test.rb", run_all?: false)
99
-
100
- locator = DummyLocator.new(request, searcher)
101
-
102
- assert_equal 4, locator.prioritized_results.file_count
103
-
104
- file_results = locator.prioritized_results.map(&:file)
105
-
106
- assert file_results.include?("/path1/to/matching_1_test.rb")
107
- assert file_results.include?("/path2/to/matching_1_test.rb")
108
- assert file_results.include?("/path1/to/matching_2_test.rb")
109
- assert file_results.include?("/path2/to/matching_2_test.rb")
110
- end
111
-
112
- def test_prioritized_results__files_found_by_path__raises_unsupported_search_error
113
- # if we find results for one path, but not for the other
114
- # then we are confused as to what to do.
115
-
116
- searcher = mock {
117
- expects(:find_files).with("matching_1_test.rb").returns(["/path1/to/matching_1_test.rb", "/path2/to/matching_1_test.rb"])
118
- expects(:find_files).with("matching_2_test.rb").returns([])
119
- }
120
- request = stub(query: "matching_1_test.rb matching_2_test.rb", run_all?: false)
121
-
122
- locator = DummyLocator.new(request, searcher)
123
-
124
- assert_raises Implementation::UnsupportedSearchError do
125
- locator.prioritized_results
126
- end
127
- end
128
-
129
- def test_prioritized_results__files_found_by_path__runs_all_if_multiple_searches
130
- searcher = mock {
131
- expects(:find_files).with("matching_1_test.rb").returns(["/path1/to/matching_1_test.rb", "/path2/to/matching_1_test.rb"])
132
- expects(:find_files).with("matching_2_test.rb").returns(["/path1/to/matching_2_test.rb", "/path2/to/matching_2_test.rb"])
133
- }
134
- request = stub(query: "matching_1_test.rb matching_2_test.rb", run_all?: false)
135
-
136
- locator = DummyLocator.new(request, searcher)
137
-
138
- assert locator.prioritized_results.run_all?
139
- end
140
-
141
- def test_prioritized_results__files_found_by_path__does_not_run_all_if_single_search
142
- searcher = mock {
143
- expects(:find_files).with("matching_test.rb").returns(["/path1/to/matching_1_test.rb", "/path2/to/matching_1_test.rb"])
144
- }
145
- request = stub(query: "matching_test.rb", run_all?: false)
146
-
147
- locator = DummyLocator.new(request, searcher)
148
-
149
- assert ! locator.prioritized_results.run_all?
150
- end
151
-
152
- def test_prioritized_results__files_found_by_path__does_not_run_all_if_single_search_unless_override
153
- searcher = mock {
154
- expects(:find_files).with("matching_test.rb").returns(["/path1/to/matching_1_test.rb", "/path2/to/matching_1_test.rb"])
155
- }
156
-
157
- request = stub(query: "matching_test.rb", run_all?: true)
158
-
159
- locator = DummyLocator.new(request, searcher)
160
-
161
- assert locator.prioritized_results.run_all?
162
- end
163
- end
164
- end
165
- end
166
- end