Class: Evilution::SpecResolver
- Inherits:
-
Object
- Object
- Evilution::SpecResolver
- Defined in:
- lib/evilution/spec_resolver.rb
Constant Summary collapse
- STRIPPABLE_PREFIXES =
%w[lib/ app/].freeze
- CONTROLLER_PREFIX =
"controllers/"
Instance Method Summary collapse
- #call(source_path) ⇒ Object
-
#initialize(test_dir: "spec", test_suffix: "_spec.rb", request_dir: "requests") ⇒ SpecResolver
constructor
A new instance of SpecResolver.
- #resolve_all(source_paths) ⇒ Object
Constructor Details
#initialize(test_dir: "spec", test_suffix: "_spec.rb", request_dir: "requests") ⇒ SpecResolver
Returns a new instance of SpecResolver.
7 8 9 10 11 |
# File 'lib/evilution/spec_resolver.rb', line 7 def initialize(test_dir: "spec", test_suffix: "_spec.rb", request_dir: "requests") @test_dir = test_dir @test_suffix = test_suffix @request_dir = request_dir end |
Instance Method Details
#call(source_path) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/evilution/spec_resolver.rb', line 13 def call(source_path) return nil if source_path.nil? || source_path.empty? normalized = normalize_path(source_path) candidates = candidate_test_paths(normalized) candidates.find { |path| File.exist?(path) } end |
#resolve_all(source_paths) ⇒ Object
21 22 23 |
# File 'lib/evilution/spec_resolver.rb', line 21 def resolve_all(source_paths) Array(source_paths).filter_map { |path| call(path) }.uniq end |