Class: Test::Unit::Assertions::ThrowTagExtractor
- Inherits:
-
Object
- Object
- Test::Unit::Assertions::ThrowTagExtractor
- Defined in:
- lib/test/unit/assertions.rb
Constant Summary collapse
- UncaughtThrowPatterns =
{ NameError => /^uncaught throw `(.+)'$/, ArgumentError => /^uncaught throw (`.+'|.+)$/, ThreadError => /^uncaught throw `(.+)' in thread /, }
- @@have_uncaught_throw_error =
const_defined?(:UncaughtThrowError)
Instance Method Summary collapse
- #extract_tag ⇒ Object
-
#initialize(error) ⇒ ThrowTagExtractor
constructor
A new instance of ThrowTagExtractor.
Constructor Details
#initialize(error) ⇒ ThrowTagExtractor
Returns a new instance of ThrowTagExtractor.
751 752 753 |
# File 'lib/test/unit/assertions.rb', line 751 def initialize(error) @error = error end |
Instance Method Details
#extract_tag ⇒ Object
755 756 757 758 759 760 761 762 763 764 765 766 767 |
# File 'lib/test/unit/assertions.rb', line 755 def extract_tag tag = nil if @@have_uncaught_throw_error return nil unless @error.is_a?(UncaughtThrowError) tag = @error.tag else pattern = UncaughtThrowPatterns[@error.class] return nil if pattern.nil? return nil unless pattern =~ @error. tag = $1 end normalize_tag(tag) end |