Class: Minitest::Queue::TestData
- Inherits:
-
Object
- Object
- Minitest::Queue::TestData
- Defined in:
- lib/minitest/queue/test_data.rb
Instance Attribute Summary collapse
-
#namespace ⇒ Object
readonly
Returns the value of attribute namespace.
-
#test_index ⇒ Object
readonly
Returns the value of attribute test_index.
Instance Method Summary collapse
-
#error_class ⇒ Object
Error class only considers failures wheras the other error fields also consider skips.
- #error_file_number ⇒ Object
- #error_file_path ⇒ Object
- #error_message ⇒ Object
-
#initialize(test:, index:, namespace:, base_path:) ⇒ TestData
constructor
A new instance of TestData.
- #test_assertions ⇒ Object
- #test_duration ⇒ Object
- #test_file_line_number ⇒ Object
- #test_file_path ⇒ Object
- #test_id ⇒ Object
- #test_name ⇒ Object
- #test_result ⇒ Object
- #test_retried ⇒ Object
- #test_suite ⇒ Object
- #to_h ⇒ Object
Constructor Details
#initialize(test:, index:, namespace:, base_path:) ⇒ TestData
Returns a new instance of TestData.
10 11 12 13 14 15 |
# File 'lib/minitest/queue/test_data.rb', line 10 def initialize(test:, index:, namespace:, base_path:) @test = test @base_path = base_path @namespace = namespace @test_index = index end |
Instance Attribute Details
#namespace ⇒ Object (readonly)
Returns the value of attribute namespace.
8 9 10 |
# File 'lib/minitest/queue/test_data.rb', line 8 def namespace @namespace end |
#test_index ⇒ Object (readonly)
Returns the value of attribute test_index.
8 9 10 |
# File 'lib/minitest/queue/test_data.rb', line 8 def test_index @test_index end |
Instance Method Details
#error_class ⇒ Object
Error class only considers failures wheras the other error fields also consider skips
69 70 71 72 73 |
# File 'lib/minitest/queue/test_data.rb', line 69 def error_class return nil unless @test.failure @test.failure.error.class.name end |
#error_file_number ⇒ Object
88 89 90 91 92 |
# File 'lib/minitest/queue/test_data.rb', line 88 def error_file_number return nil unless @test.failure error_location(@test.failure).last end |
#error_file_path ⇒ Object
81 82 83 84 85 86 |
# File 'lib/minitest/queue/test_data.rb', line 81 def error_file_path return nil unless @test.failure path = error_location(@test.failure).first relative_path_for(path) end |
#error_message ⇒ Object
75 76 77 78 79 |
# File 'lib/minitest/queue/test_data.rb', line 75 def return nil unless @test.failure @test.failure. end |
#test_assertions ⇒ Object
47 48 49 |
# File 'lib/minitest/queue/test_data.rb', line 47 def test_assertions @test.assertions end |
#test_duration ⇒ Object
51 52 53 |
# File 'lib/minitest/queue/test_data.rb', line 51 def test_duration @test.time end |
#test_file_line_number ⇒ Object
64 65 66 |
# File 'lib/minitest/queue/test_data.rb', line 64 def test_file_line_number @test.source_location.last end |
#test_file_path ⇒ Object
55 56 57 58 59 60 61 62 |
# File 'lib/minitest/queue/test_data.rb', line 55 def test_file_path path = @test.source_location.first begin relative_path_for(path) rescue ArgumentError path # e.g. "(eval)" etc. end end |
#test_id ⇒ Object
17 18 19 |
# File 'lib/minitest/queue/test_data.rb', line 17 def test_id "#{test_suite}##{test_name}" end |
#test_name ⇒ Object
21 22 23 |
# File 'lib/minitest/queue/test_data.rb', line 21 def test_name @test.name end |
#test_result ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/minitest/queue/test_data.rb', line 33 def test_result if @test.passed? 'success' elsif !@test.requeued? && @test.skipped? 'skipped' elsif @test.error? 'error' elsif @test.failure 'failure' else 'undefined' end end |
#test_retried ⇒ Object
29 30 31 |
# File 'lib/minitest/queue/test_data.rb', line 29 def test_retried @test.requeued? end |
#test_suite ⇒ Object
25 26 27 |
# File 'lib/minitest/queue/test_data.rb', line 25 def test_suite @test.klass end |
#to_h ⇒ Object
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'lib/minitest/queue/test_data.rb', line 94 def to_h { namespace: namespace, test_id: test_id, test_name: test_name, test_suite: test_suite, test_result: test_result, test_index: test_index, test_result_ignored: @test.flaked?, test_retried: test_retried, test_assertions: test_assertions, test_duration: test_duration, test_file_path: test_file_path, test_file_line_number: test_file_line_number, error_class: error_class, error_message: , error_file_path: error_file_path, error_file_number: error_file_number, } end |