Module: MutationTester::FrameworkDetector

Defined in:
lib/mutation_tester/framework_detector.rb

Constant Summary collapse

MINITEST_REQUIRE =
/require\s+['"]minitest/.freeze

Class Method Summary collapse

Class Method Details

.detect(spec_file) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/mutation_tester/framework_detector.rb', line 7

def detect(spec_file)
  basename = File.basename(spec_file)

  return :rspec if basename.end_with?('_spec.rb', '.spec.rb')
  return :minitest if basename.end_with?('_test.rb') || basename.start_with?('test_')
  return :minitest if minitest_content?(spec_file)

  :rspec
end

.minitest_content?(spec_file) ⇒ Boolean

Returns:

  • (Boolean)


17
18
19
20
21
22
23
# File 'lib/mutation_tester/framework_detector.rb', line 17

def minitest_content?(spec_file)
  return false unless File.exist?(spec_file)

  File.read(spec_file).match?(MINITEST_REQUIRE)
rescue StandardError
  false
end