Sha256: 96c3bda97c5504b5cf02dd93d25b61b085660c7b8a6c258fb730c21fddc70f21
Contents?: true
Size: 1.62 KB
Versions: 1
Compression:
Stored size: 1.62 KB
Contents
$:.unshift "../lib" require 'test/unit' require 'needle' require 'needle/extras/require-library' class TC_RequireLibrary_Container < Test::Unit::TestCase def test_require_library_registered reg = Needle::Registry.new assert !reg.keys.include?( :multicast ) reg.require_library "needle/extras" assert reg.keys.include?( :multicast ) end def test_require_library_unregistered reg = Needle::Registry.new assert_nothing_raised do reg.require_library "rational" end end def test_require_library_custom_hook called_by = nil Needle::LIBRARIES['yaml'] = lambda { |container| called_by = container } reg = Needle::Registry.new reg.require_library "yaml" assert_same called_by, reg end end class TC_RequireLibrary_Needle < Test::Unit::TestCase Klass = Class.new do attr_reader :events def method_missing( sym, *args ) @events ||= [] @events << [ sym, *args ] end end def test_register_library mod = Klass.new assert !Needle::LIBRARIES.has_key?( "openssl" ) Needle.register_library( "openssl", mod ) assert Needle::LIBRARIES.has_key?( "openssl" ) reg = Needle::Registry.new reg.require_library "openssl" assert_equal [ [ :register_services, reg ] ], mod.events end def test_register_library_custom_method mod = Klass.new assert !Needle::LIBRARIES.has_key?( "net/http" ) Needle.register_library( "net/http", mod, :register_foo ) assert Needle::LIBRARIES.has_key?( "net/http" ) reg = Needle::Registry.new reg.require_library "net/http" assert_equal [ [ :register_foo, reg ] ], mod.events end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
needle-extras-1.0.0 | test/tc_require-library.rb |