@@ -51,6 +51,46 @@ public void TestCoverToSingleManagerGet()
5151 Assert . AreSame ( manager . Default , manager2 . Get ( ) ) ;
5252 }
5353
54+ [ TestMethod ]
55+ public void TestContains ( )
56+ {
57+ var manager = new TestManager ( ) ;
58+ manager . Extend ( ( ) => new InterfaceImpl ( ) ) ;
59+ bool resolve = false , release = false ;
60+ manager . OnResolving += ( _ ) =>
61+ {
62+ resolve = true ;
63+ } ;
64+ manager . OnRelease += ( _ ) =>
65+ {
66+ release = true ;
67+ } ;
68+ Assert . AreEqual ( false , manager . Contains ( ) ) ;
69+ Assert . AreEqual ( false , resolve ) ;
70+ Assert . AreEqual ( false , release ) ;
71+ manager . Get ( ) ;
72+ Assert . AreEqual ( true , resolve ) ;
73+ Assert . AreEqual ( true , manager . Contains ( ) ) ;
74+ manager . Release ( ) ;
75+ Assert . AreEqual ( true , release ) ;
76+ Assert . AreEqual ( false , manager . Contains ( ) ) ;
77+ }
78+
79+ [ TestMethod ]
80+ public void TestDispose ( )
81+ {
82+ var manager = new TestManager ( ) ;
83+ manager . Extend ( ( ) => new InterfaceImpl ( ) ) ;
84+ manager . Extend ( ( ) => new InterfaceImpl ( ) , "name-2" ) ;
85+ manager . Get ( ) ;
86+ manager . Get ( "name-2" ) ;
87+ Assert . AreEqual ( true , manager . Contains ( ) ) ;
88+ Assert . AreEqual ( true , manager . Contains ( "name-2" ) ) ;
89+ manager . Dispose ( ) ;
90+ Assert . AreEqual ( false , manager . Contains ( ) ) ;
91+ Assert . AreEqual ( false , manager . Contains ( "name-2" ) ) ;
92+ }
93+
5494 [ TestMethod ]
5595 public void TestCoverToInterfaceSingleManagerGet ( )
5696 {
@@ -76,7 +116,7 @@ public void TestManagerRelease()
76116 public void TestContainsExtend ( )
77117 {
78118 var manager = new TestManager ( ) ;
79- manager . Extend ( ( ) => new InterfaceImpl ( ) , "hello" ) ;
119+ manager . Extend ( ( ) => new InterfaceImpl ( ) , "hello" ) ;
80120
81121 Assert . AreEqual ( false , manager . ContainsExtend ( ) ) ;
82122 Assert . AreEqual ( true , manager . ContainsExtend ( "hello" ) ) ;
0 commit comments