1 # -*- coding: us-ascii -*-
2 # frozen_string_literal: false
5 class TestRecursion < Test::Unit::TestCase
6 require '-test-/recursion'
9 @obj = Struct.new(:visited).new(false)
10 @obj.extend(Bug::Recursive)
19 assert_raise_with_message(RuntimeError, "recursive") {
20 @obj.exec_recursive(:doit)
22 assert(@obj.visited, "obj.hash was not called")
25 def test_recursive_outer
28 exec_recursive_outer(:doit)
29 raise "recursive_outer should short circuit intermediate calls"
31 assert_nothing_raised {
32 @obj.exec_recursive_outer(:doit)
34 assert(@obj.visited, "obj.hash was not called")