Class: Minitest::Subjective::CaseInquirer
- Inherits:
-
Object
- Object
- Minitest::Subjective::CaseInquirer
- Defined in:
- lib/minitest/subjective/case_inquirer.rb
Overview
:nodoc:
Instance Attribute Summary collapse
-
#class_name ⇒ Object
readonly
Returns the value of attribute class_name.
-
#subject_file ⇒ Object
readonly
Returns the value of attribute subject_file.
Instance Method Summary collapse
- #==(other) ⇒ Object
-
#initialize(klass) ⇒ CaseInquirer
constructor
A new instance of CaseInquirer.
- #integration_test? ⇒ Boolean
- #minitest_test? ⇒ Boolean
- #rails_test? ⇒ Boolean
- #subject_name ⇒ Object
- #test? ⇒ Boolean
Constructor Details
#initialize(klass) ⇒ CaseInquirer
Returns a new instance of CaseInquirer.
8 9 10 11 12 13 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 8 def initialize(klass) @class_name = klass.is_a?(String) ? klass : klass.name @klass = klass.is_a?(String) ? safe_constantize(klass) : klass load_subject @subject_file = Object.const_source_location(subject_name)&.first end |
Instance Attribute Details
#class_name ⇒ Object (readonly)
Returns the value of attribute class_name.
6 7 8 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 6 def class_name @class_name end |
#subject_file ⇒ Object (readonly)
Returns the value of attribute subject_file.
6 7 8 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 6 def subject_file @subject_file end |
Instance Method Details
#==(other) ⇒ Object
33 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 33 def ==(other) = class_name == other.class_name && klass == other.klass && subject_file == other.subject_file |
#integration_test? ⇒ Boolean
32 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 32 def integration_test? = rails_test? && defined?(::ActionDispatch) && klass < ActionDispatch::IntegrationTest |
#minitest_test? ⇒ Boolean
24 25 26 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 24 def minitest_test? demodulized_class_name.start_with?('Test') && klass < Minitest::Test end |
#rails_test? ⇒ Boolean
28 29 30 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 28 def rails_test? demodulized_class_name.end_with?('Test') && defined?(::ActiveSupport) && klass < ActiveSupport::TestCase end |
#subject_name ⇒ Object
15 16 17 18 19 20 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 15 def subject_name return class_name unless test? return [class_name_nesting, demodulized_class_name.delete_suffix('Test')].join('::') if rails_test? [class_name_nesting, demodulized_class_name.delete_prefix('Test')].join('::') end |
#test? ⇒ Boolean
22 |
# File 'lib/minitest/subjective/case_inquirer.rb', line 22 def test? = rails_test? || minitest_test? |