|
|
|
@ -129,7 +129,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
installerMock.Received(1).Install(Arg.Any<IRegistrationCollector>()); |
|
|
|
installerMock.Received(1).Install(Arg.Any<IRegistrationCollector>()); |
|
|
|
|
|
|
|
|
|
|
|
Assert.AreEqual(_iocContainer, returnedContainer); |
|
|
|
Assert.That(returnedContainer, Is.EqualTo(_iocContainer)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -145,7 +145,7 @@ public class IocContainerTest |
|
|
|
installer2Mock.Received(1).Install(Arg.Any<IRegistrationCollector>()); |
|
|
|
installer2Mock.Received(1).Install(Arg.Any<IRegistrationCollector>()); |
|
|
|
installer3Mock.Received(1).Install(Arg.Any<IRegistrationCollector>()); |
|
|
|
installer3Mock.Received(1).Install(Arg.Any<IRegistrationCollector>()); |
|
|
|
|
|
|
|
|
|
|
|
Assert.AreEqual(_iocContainer, returnedContainer); |
|
|
|
Assert.That(returnedContainer, Is.EqualTo(_iocContainer)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -165,7 +165,7 @@ public class IocContainerTest |
|
|
|
{ |
|
|
|
{ |
|
|
|
_iocContainer.Register(r => r.Add<ITest, Test>()); |
|
|
|
_iocContainer.Register(r => r.Add<ITest, Test>()); |
|
|
|
MultipleRegistrationException exception = Assert.Throws<MultipleRegistrationException>(() => _iocContainer.Register(r => r.Add<ITest, TestConstructor>())); |
|
|
|
MultipleRegistrationException exception = Assert.Throws<MultipleRegistrationException>(() => _iocContainer.Register(r => r.Add<ITest, TestConstructor>())); |
|
|
|
Assert.AreEqual(typeof(ITest), exception?.Type); |
|
|
|
Assert.That(exception?.Type, Is.EqualTo(typeof(ITest))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -186,7 +186,7 @@ public class IocContainerTest |
|
|
|
public void TestResolveNotRegistered() |
|
|
|
public void TestResolveNotRegistered() |
|
|
|
{ |
|
|
|
{ |
|
|
|
TypeNotRegisteredException exception = Assert.Throws<TypeNotRegisteredException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
TypeNotRegisteredException exception = Assert.Throws<TypeNotRegisteredException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
Assert.AreEqual(typeof(ITest), exception?.Type); |
|
|
|
Assert.That(exception?.Type, Is.EqualTo(typeof(ITest))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -196,7 +196,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
|
|
|
|
|
|
|
|
Assert.IsInstanceOf<Test>(resolvedTest); |
|
|
|
Assert.That(resolvedTest, Is.InstanceOf<Test>()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -206,7 +206,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
Test resolvedTest = _iocContainer.Resolve<Test>(); |
|
|
|
Test resolvedTest = _iocContainer.Resolve<Test>(); |
|
|
|
|
|
|
|
|
|
|
|
Assert.IsInstanceOf<Test>(resolvedTest); |
|
|
|
Assert.That(resolvedTest, Is.InstanceOf<Test>()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -223,7 +223,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
Test resolvedTest = _iocContainer.Resolve<Test>(); |
|
|
|
Test resolvedTest = _iocContainer.Resolve<Test>(); |
|
|
|
|
|
|
|
|
|
|
|
Assert.IsInstanceOf<Test>(resolvedTest); |
|
|
|
Assert.That(resolvedTest, Is.InstanceOf<Test>()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -233,7 +233,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>("Test", new Test()); |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>("Test", new Test()); |
|
|
|
|
|
|
|
|
|
|
|
Assert.IsInstanceOf<TestConstructor>(resolvedTest); |
|
|
|
Assert.That(resolvedTest, Is.InstanceOf<TestConstructor>()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -244,7 +244,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>("Test"); |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>("Test"); |
|
|
|
|
|
|
|
|
|
|
|
Assert.IsInstanceOf<TestConstructor>(resolvedTest); |
|
|
|
Assert.That(resolvedTest, Is.InstanceOf<TestConstructor>()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -255,7 +255,7 @@ public class IocContainerTest |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest secondResolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest secondResolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
|
|
|
|
|
|
|
|
Assert.AreEqual(resolvedTest, secondResolvedTest); |
|
|
|
Assert.That(secondResolvedTest, Is.EqualTo(resolvedTest)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -270,9 +270,9 @@ public class IocContainerTest |
|
|
|
ITest resolvedTest2 = _iocContainer.Resolve<ITest>(scope1); |
|
|
|
ITest resolvedTest2 = _iocContainer.Resolve<ITest>(scope1); |
|
|
|
ITest resolvedTest3 = _iocContainer.Resolve<ITest>(scope2); |
|
|
|
ITest resolvedTest3 = _iocContainer.Resolve<ITest>(scope2); |
|
|
|
|
|
|
|
|
|
|
|
Assert.AreSame(resolvedTest1, resolvedTest2); |
|
|
|
Assert.That(resolvedTest1, Is.SameAs(resolvedTest2)); |
|
|
|
Assert.AreNotSame(resolvedTest1, resolvedTest3); |
|
|
|
Assert.That(resolvedTest1, Is.Not.SameAs(resolvedTest3)); |
|
|
|
Assert.AreNotSame(resolvedTest2, resolvedTest3); |
|
|
|
Assert.That(resolvedTest2, Is.Not.SameAs(resolvedTest3)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -284,9 +284,9 @@ public class IocContainerTest |
|
|
|
ITest resolvedTest2 = _iocContainer.Resolve<ITest>(1); |
|
|
|
ITest resolvedTest2 = _iocContainer.Resolve<ITest>(1); |
|
|
|
ITest resolvedTest3 = _iocContainer.Resolve<ITest>(2); |
|
|
|
ITest resolvedTest3 = _iocContainer.Resolve<ITest>(2); |
|
|
|
|
|
|
|
|
|
|
|
Assert.AreSame(resolvedTest1, resolvedTest2); |
|
|
|
Assert.That(resolvedTest1, Is.SameAs(resolvedTest2)); |
|
|
|
Assert.AreNotSame(resolvedTest1, resolvedTest3); |
|
|
|
Assert.That(resolvedTest1, Is.Not.SameAs(resolvedTest3)); |
|
|
|
Assert.AreNotSame(resolvedTest2, resolvedTest3); |
|
|
|
Assert.That(resolvedTest2, Is.Not.SameAs(resolvedTest3)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -295,7 +295,7 @@ public class IocContainerTest |
|
|
|
_iocContainer.Register(r => r.AddMultiton<ITest, Test, MultitonScope>()); |
|
|
|
_iocContainer.Register(r => r.AddMultiton<ITest, Test, MultitonScope>()); |
|
|
|
|
|
|
|
|
|
|
|
MultitonResolveException exception = Assert.Throws<MultitonResolveException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
MultitonResolveException exception = Assert.Throws<MultitonResolveException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
Assert.AreEqual(typeof(ITest), exception?.Type); |
|
|
|
Assert.That(exception?.Type, Is.EqualTo(typeof(ITest))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -304,7 +304,7 @@ public class IocContainerTest |
|
|
|
_iocContainer.Register(r => r.AddMultiton<ITest, Test, MultitonScope>()); |
|
|
|
_iocContainer.Register(r => r.AddMultiton<ITest, Test, MultitonScope>()); |
|
|
|
|
|
|
|
|
|
|
|
MultitonResolveException exception = Assert.Throws<MultitonResolveException>(() => _iocContainer.Resolve<ITest>(new object())); |
|
|
|
MultitonResolveException exception = Assert.Throws<MultitonResolveException>(() => _iocContainer.Resolve<ITest>(new object())); |
|
|
|
Assert.AreEqual(typeof(ITest), exception?.Type); |
|
|
|
Assert.That(exception?.Type, Is.EqualTo(typeof(ITest))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -315,7 +315,7 @@ public class IocContainerTest |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest resolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest secondResolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest secondResolvedTest = _iocContainer.Resolve<ITest>(); |
|
|
|
|
|
|
|
|
|
|
|
Assert.AreNotEqual(resolvedTest, secondResolvedTest); |
|
|
|
Assert.That(secondResolvedTest, Is.Not.EqualTo(resolvedTest)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -323,7 +323,7 @@ public class IocContainerTest |
|
|
|
{ |
|
|
|
{ |
|
|
|
_iocContainer.Register(r => r.Add<ITest, TestConstructor>()); |
|
|
|
_iocContainer.Register(r => r.Add<ITest, TestConstructor>()); |
|
|
|
NoMatchingConstructorFoundException exception = Assert.Throws<NoMatchingConstructorFoundException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
NoMatchingConstructorFoundException exception = Assert.Throws<NoMatchingConstructorFoundException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
Assert.AreEqual(typeof(TestConstructor), exception?.Type); |
|
|
|
Assert.That(exception?.Type, Is.EqualTo(typeof(TestConstructor))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -338,7 +338,7 @@ public class IocContainerTest |
|
|
|
{ |
|
|
|
{ |
|
|
|
_iocContainer.Register(r => r.Add<ITest, TestPrivateConstructor>()); |
|
|
|
_iocContainer.Register(r => r.Add<ITest, TestPrivateConstructor>()); |
|
|
|
NoPublicConstructorFoundException exception = Assert.Throws<NoPublicConstructorFoundException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
NoPublicConstructorFoundException exception = Assert.Throws<NoPublicConstructorFoundException>(() => _iocContainer.Resolve<ITest>()); |
|
|
|
Assert.AreEqual(typeof(TestPrivateConstructor), exception?.Type); |
|
|
|
Assert.That(exception?.Type, Is.EqualTo(typeof(TestPrivateConstructor))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -349,7 +349,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
ITest test = _iocContainer.Resolve<ITest>(); |
|
|
|
ITest test = _iocContainer.Resolve<ITest>(); |
|
|
|
|
|
|
|
|
|
|
|
Assert.NotNull(test); |
|
|
|
Assert.That(test, Is.Not.Null); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -360,7 +360,7 @@ public class IocContainerTest |
|
|
|
|
|
|
|
|
|
|
|
ITest test = _iocContainer.Resolve<ITest>("testName"); |
|
|
|
ITest test = _iocContainer.Resolve<ITest>("testName"); |
|
|
|
|
|
|
|
|
|
|
|
Assert.IsInstanceOf<TestConstructor>(test); |
|
|
|
Assert.That(test, Is.InstanceOf<TestConstructor>()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -382,12 +382,12 @@ public class IocContainerTest |
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
public void TestIsTypeRegistered() |
|
|
|
public void TestIsTypeRegistered() |
|
|
|
{ |
|
|
|
{ |
|
|
|
Assert.False(_iocContainer.IsTypeRegistered<ITest>()); |
|
|
|
Assert.That(_iocContainer.IsTypeRegistered<ITest>(), Is.False); |
|
|
|
|
|
|
|
|
|
|
|
_iocContainer.Register(r => r.Add<ITest, Test>()); |
|
|
|
_iocContainer.Register(r => r.Add<ITest, Test>()); |
|
|
|
Assert.True(_iocContainer.IsTypeRegistered<ITest>()); |
|
|
|
Assert.That(_iocContainer.IsTypeRegistered<ITest>(), Is.True); |
|
|
|
|
|
|
|
|
|
|
|
_iocContainer.Register(r => r.Add<Test>()); |
|
|
|
_iocContainer.Register(r => r.Add<Test>()); |
|
|
|
Assert.True(_iocContainer.IsTypeRegistered<Test>()); |
|
|
|
Assert.That(_iocContainer.IsTypeRegistered<Test>(), Is.True); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |