Class: Minitest::Result
- Includes:
- Reportable
- Defined in:
- lib/minitest.rb
Overview
This represents a test result in a clean way that can be marshalled over a wire. Tests can do anything they want to the test instance and can create conditions that cause Marshal.dump to blow up. By using Result.from(a_test) you can be reasonably sure that the test result can be marshalled.
Constant Summary
Constants included from Reportable
Minitest::Reportable::BASE_DIR
Constants inherited from Runnable
Instance Attribute Summary collapse
-
#klass ⇒ Object
The class name of the test result.
-
#source_location ⇒ Object
The location of the test method.
Attributes inherited from Runnable
#assertions, #failures, #metadata, #time
Class Method Summary collapse
-
.from(runnable) ⇒ Object
Create a new test result from a Runnable instance.
Instance Method Summary collapse
-
#class_name ⇒ Object
:nodoc:.
-
#to_s ⇒ Object
:nodoc:.
Methods included from Reportable
#error?, #location, #passed?, #result_code, #skipped?
Methods inherited from Runnable
#failure, inherited, #initialize, #marshal_dump, #marshal_load, #metadata?, methods_matching, #name, #name=, on_signal, #passed?, reset, #result_code, #run, run, run_one_method, runnable_methods, runnables, #skipped?, test_order, #time_it, with_info_handler
Constructor Details
This class inherits a constructor from Minitest::Runnable
Instance Attribute Details
#klass ⇒ Object
The class name of the test result.
645 646 647 |
# File 'lib/minitest.rb', line 645 def klass @klass end |
#source_location ⇒ Object
The location of the test method.
650 651 652 |
# File 'lib/minitest.rb', line 650 def source_location @source_location end |
Class Method Details
.from(runnable) ⇒ Object
Create a new test result from a Runnable instance.
655 656 657 658 659 660 661 662 663 664 665 666 667 668 |
# File 'lib/minitest.rb', line 655 def self.from runnable o = runnable r = self.new o.name r.klass = o.class.name r.assertions = o.assertions r.failures = o.failures.dup r.time = o.time r. = o. if o. r.source_location = o.method(o.name).source_location rescue ["unknown", -1] r end |
Instance Method Details
#class_name ⇒ Object
:nodoc:
670 671 672 |
# File 'lib/minitest.rb', line 670 def class_name # :nodoc: self.klass # for Minitest::Reportable end |
#to_s ⇒ Object
:nodoc:
674 675 676 677 678 679 680 |
# File 'lib/minitest.rb', line 674 def to_s # :nodoc: return location if passed? and not skipped? failures.map { |failure| "#{failure.result_label}:\n#{self.location}:\n#{failure.}\n" }.join "\n" end |