public void TestImplementationRegister() { //Arrange var reg = new DynamicRegistrantWithoutResolver(r => r.Register <IDummy, Dummy>()); //Act var res = reg.GetRegisteredTypeAssociation().ToArray(); //Assert res.Should().AllBeOfType <ImplementationRegisteredElement>().And.HaveCount(1); var elem = (ImplementationRegisteredElement)res.Single(); elem.RegisteredType.Should().Be <IDummy>(); elem.ImplementationType.Should().Be <Dummy>(); elem.Name.Should().BeNullOrEmpty(); elem.Factory.Should().BeNull(); elem.IsSingleton.Should().BeFalse(); }
public void TestSimpleRegisterWithFactorySingleton() { //Arrange Dummy CreatFunc(IResolverService resolver) => new Dummy(); var reg = new DynamicRegistrantWithoutResolver(r => r.Register(CreatFunc, true)); //Act var res = reg.GetRegisteredTypeAssociation().ToArray(); //Assert res.Should().AllBeOfType <SimpleRegisteredElement>().And.HaveCount(1); var elem = (SimpleRegisteredElement)res.Single(); elem.RegisteredType.Should().Be <Dummy>(); elem.IsSingleton.Should().BeTrue(); //elem.Factory.Should().Be((Func<Dummy>) CreatFunc); Todo: Check that ! }
public void TestImplementationRegisterNamedSingleton() { //Arrange const string NAME = "MyName"; var reg = new DynamicRegistrantWithoutResolver(r => r.Register <IDummy, Dummy>(NAME, isSingleton: true)); //Act var res = reg.GetRegisteredTypeAssociation().ToArray(); //Assert res.Should().AllBeOfType <ImplementationRegisteredElement>().And.HaveCount(1); var elem = (ImplementationRegisteredElement)res.Single(); elem.RegisteredType.Should().Be <IDummy>(); elem.ImplementationType.Should().Be <Dummy>(); elem.Name.Should().Be(NAME); elem.Factory.Should().BeNull(); elem.IsSingleton.Should().BeTrue(); }
public void TestImplementationRegisterWithFactory() { //Arrange Dummy CreatFunc(IResolverService resolver) => new Dummy(); var reg = new DynamicRegistrantWithoutResolver(r => r.Register <IDummy, Dummy>(factory: CreatFunc)); //Act var res = reg.GetRegisteredTypeAssociation().ToArray(); //Assert res.Should().AllBeOfType <ImplementationRegisteredElement>().And.HaveCount(1); var elem = (ImplementationRegisteredElement)res.Single(); elem.RegisteredType.Should().Be <IDummy>(); elem.ImplementationType.Should().Be <Dummy>(); elem.Name.Should().BeNullOrEmpty(); elem.IsSingleton.Should().BeFalse(); //elem.Factory.Should().Be((Func<Dummy>)CreatFunc); Todo: Check that ! }
public void TestImplementationRegisterNamedWithFactorySingleton() { //Arrange const string NAME = "MyName"; Dummy CreatFunc(IResolverService resolver) => new Dummy(); var reg = new DynamicRegistrantWithoutResolver(r => r.Register <IDummy, Dummy>(NAME, CreatFunc, true)); //Act var res = reg.GetRegisteredTypeAssociation().ToArray(); //Assert res.Should().AllBeOfType <ImplementationRegisteredElement>().And.HaveCount(1); var elem = (ImplementationRegisteredElement)res.Single(); elem.RegisteredType.Should().Be <IDummy>(); elem.ImplementationType.Should().Be <Dummy>(); elem.Name.Should().Be(NAME); elem.IsSingleton.Should().BeTrue(); //elem.Factory.Should().Be((Func<Dummy>)CreatFunc); Todo: Check that ! }