Class: Test::Unit::UI::Launchable::JSON::LaunchableTestCase

Inherits:
Object
  • Object
show all
Defined in:
lib/test/unit/ui/launchable/json/testrunner.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(test) ⇒ LaunchableTestCase

Returns a new instance of LaunchableTestCase.



56
57
58
59
60
61
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 56

def initialize(test)
  @method_name = test.method_name
  @class_name = test.class.name
  @failure_msg = ""
  @source_location = test.method(@method_name).source_location.first
end

Instance Attribute Details

#class_nameObject (readonly)

Returns the value of attribute class_name.



53
54
55
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 53

def class_name
  @class_name
end

#elapsed_timeObject

Returns the value of attribute elapsed_time.



54
55
56
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 54

def elapsed_time
  @elapsed_time
end

#faultObject

Returns the value of attribute fault.



54
55
56
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 54

def fault
  @fault
end

#method_nameObject (readonly)

Returns the value of attribute method_name.



53
54
55
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 53

def method_name
  @method_name
end

#source_locationObject (readonly)

Returns the value of attribute source_location.



53
54
55
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 53

def source_location
  @source_location
end

Instance Method Details

#statusObject



63
64
65
66
67
68
69
70
71
72
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 63

def status
  case @fault
  when Pending, Omission
    'TEST_SKIPPED'
  when Error, Failure
    'TEST_FAILED'
  else
    'TEST_PASSED'
  end
end

#stderrObject



74
75
76
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 74

def stderr
  @fault&.message
end

#test_pathObject



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# File 'lib/test/unit/ui/launchable/json/testrunner.rb', line 78

def test_path
  [
    {
      "type": "file",
      "name": @source_location
    },
    {
      "type": "class",
      "name": @class_name
    },
    {
      "type": "testcase",
      "name": @method_name
    }
  ]
end