Sha256: 655a266d98c8125f3c8d40ffd8171178589991aa307998191937bb2ed0af4480
Contents?: true
Size: 1.13 KB
Versions: 21
Compression:
Stored size: 1.13 KB
Contents
require 'pathname' require Pathname.new( File.dirname(__FILE__)).join( 'test_helper' ).cleanpath require 'build-tool/singleton' class TestSingleton < Test::Unit::TestCase class Child1 < BuildTool::Singleton end class GrandChild1 < Child1 end class Child2 < BuildTool::Singleton end class GrandChild2 < Child2 end def test_singletion c1 = Child1.new c1.instance assert_equal c1.instance, Child1.instance assert_raise StandardError do Child1.new end assert_raise StandardError do gc = GrandChild1.new end gc2 = GrandChild2.new assert_equal gc2.instance, Child2.instance assert_equal gc2.instance, GrandChild2.instance assert_not_equal Child1.instance, GrandChild2.instance gc2.destroy assert_nil gc2.instance assert_nil Child2.instance assert_nil GrandChild2.instance gc2_new = GrandChild2.new assert_equal gc2_new.instance, Child2.instance assert_equal gc2_new.instance, GrandChild2.instance end end
Version data entries
21 entries across 21 versions & 1 rubygems