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 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
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, methods_matching, #name, #name=, on_signal, #passed?, reset, #result_code, run, #run, run_one_method, runnable_methods, runnables, #skipped?, #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.
505 506 507 |
# File 'lib/minitest.rb', line 505 def klass @klass end |
#source_location ⇒ Object
The location of the test method.
510 511 512 |
# File 'lib/minitest.rb', line 510 def source_location @source_location end |
Class Method Details
.from(runnable) ⇒ Object
Create a new test result from a Runnable instance.
515 516 517 518 519 520 521 522 523 524 525 526 527 |
# File 'lib/minitest.rb', line 515 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.source_location = o.method(o.name).source_location rescue ["unknown", -1] r end |
Instance Method Details
#class_name ⇒ Object
:nodoc:
529 530 531 |
# File 'lib/minitest.rb', line 529 def class_name # :nodoc: self.klass # for Minitest::Reportable end |
#to_s ⇒ Object
:nodoc:
533 534 535 536 537 538 539 |
# File 'lib/minitest.rb', line 533 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 |