| Class | AbstractTest |
| In: |
lib/abstract.rb
|
| Parent: | Test::Unit::TestCase |
# File lib/abstract.rb, line 78 def test_abstract assert_nothing_raised { R.new } assert(A.include?(Abstract)) assert_raises(TypeError) { A.new } assert_raises(TypeError) { B.new } assert_raises(TypeError) do AbstractTest.module_eval %q{ class D include Concrete include Abstract end } end end
# File lib/abstract.rb, line 174 def test_abstract? assert(IsA.abstract?) assert(! IsB.abstract?) end
# File lib/abstract.rb, line 133 def test_abstract_singleton assert(SA.include?(Abstract)) assert_raises(NoMethodError) { SA.new } assert_raises(TypeError) { SA.instance } assert_raises(NoMethodError) { SB.new } assert_raises(TypeError) { SB.instance } assert_raises(TypeError) do AbstractTest.module_eval %q{ class SD; include Concrete; include Abstract; end } end end
# File lib/abstract.rb, line 194 def test_arg assert_nothing_raised { CArg.new('toto') } assert_raises(ArgumentError) { CArg.new } end
# File lib/abstract.rb, line 106 def test_concrete assert_raises(TypeError) do AbstractTest.module_eval %q{ class D; include Concrete; end } end assert(C.new.initialized) assert_nil(C.new.toto) assert_equal('toto', C.new('toto').toto) assert(CC.new.initialized) assert_equal(SC.instance, SC.instance) assert_equal(SCC.instance, SCC.instance) assert_not_equal(SC.instance, SCC.instance) end
# File lib/abstract.rb, line 153 def test_concrete_singleton assert_raises(TypeError) do AbstractTest.module_eval %q{ class SD; include Concrete; end } end assert_raises(NoMethodError) { SC.new } assert(SC.instance.initialized) assert(SCC.instance.initialized) assert_equal(SC.instance, SC.instance) assert_equal(SCC.instance, SCC.instance) assert_not_equal(SC.instance, SCC.instance) end
# File lib/abstract.rb, line 204 def test_double_abstract assert_raises(TypeError) { AA_.new } assert_raises(TypeError) { BB_.new } assert_nothing_raised { CC_.new } assert_nothing_raised { DD_.new } end