module Minitest::SubTestCase
Constants
- VERSION
Public Instance Methods
sub_test_case(name, &block)
click to toggle source
Calls superclass method
# File lib/minitest/sub_test_case.rb, line 6 def sub_test_case(name, &block) parent_test_case = self sub_test_case = Class.new(self) do define_singleton_method(:class_name) do class_name = defined?(parent_test_case.class_name) ? parent_test_case.class_name : parent_test_case [class_name, name].compact.join("::") end define_singleton_method(:methods_matching) do |re| super(re) - parent_test_case.methods_matching(re) end define_singleton_method(:name) do class_name end # NOTE: `location` method needs only for support of Minitest < 5.11. define_method(:location) do loc = " [#{self.failure.location}]" unless passed? or error? "#{self.class.class_name}##{self.name}#{loc}" end # NOTE: These methods need for Rails's parallel testing that uses DRb. define_method(:marshal_dump) do [self.name] end define_method(:marshal_load) do |ary| self.name = ary end end sub_test_case.class_eval(&block) sub_test_case end