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_finish_timestamp ⇒ Object
- #test_id ⇒ Object
- #test_name ⇒ Object
- #test_result ⇒ Object
- #test_retried ⇒ Object
- #test_start_timestamp ⇒ 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
77 78 79 80 81 |
# File 'lib/minitest/queue/test_data.rb', line 77 def error_class return nil unless @test.failure @test.failure.error.class.name end |
#error_file_number ⇒ Object
100 101 102 103 104 |
# File 'lib/minitest/queue/test_data.rb', line 100 def error_file_number return nil unless @test.failure error_location(@test.failure).last end |
#error_file_path ⇒ Object
89 90 91 92 93 94 95 96 97 98 |
# File 'lib/minitest/queue/test_data.rb', line 89 def error_file_path return nil unless @test.failure path = error_location(@test.failure).first begin relative_path_for(path) rescue ArgumentError path # e.g. "(eval)" etc. end end |
#error_message ⇒ Object
83 84 85 86 87 |
# File 'lib/minitest/queue/test_data.rb', line 83 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
72 73 74 |
# File 'lib/minitest/queue/test_data.rb', line 72 def test_file_line_number @test.source_location.last end |
#test_file_path ⇒ Object
63 64 65 66 67 68 69 70 |
# File 'lib/minitest/queue/test_data.rb', line 63 def test_file_path path = @test.source_location.first begin relative_path_for(path) rescue ArgumentError path # e.g. "(eval)" etc. end end |
#test_finish_timestamp ⇒ Object
59 60 61 |
# File 'lib/minitest/queue/test_data.rb', line 59 def @test. 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_start_timestamp ⇒ Object
55 56 57 |
# File 'lib/minitest/queue/test_data.rb', line 55 def @test. 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
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
# File 'lib/minitest/queue/test_data.rb', line 106 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_start_timestamp: , test_finish_timestamp: , 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 |