public void ShouldResolveExplicitelyRegisteredType() { // Arrange var services = new ServiceConnect.Container.Default.Container(); services.RegisterFor(typeof(MyImplementation), typeof(IMyInterface <string>)); // Act var result = services.Resolve <IMyInterface <string> >(); // Assert Assert.NotNull(result); Assert.Equal("MyImplementation", result.GetType().Name); }
public void ShouldResolveRegisteredTypeWithCtorParams() { // Arrange var services = new ServiceConnect.Container.Default.Container(); services.RegisterFor(typeof(MyImplementationWithCtor), typeof(IMyInterface <string>)); // Act var result = services.Resolve(typeof(IMyInterface <string>), new Dictionary <string, object> { { "name", "testName" } }); // Assert Assert.NotNull(result); Assert.Equal("testName", ((IMyInterface <string>)result).Name); }
public void ShouldResolveRegisteredInstances() { // Arrange IMyInterface <string> myInstance = new MyGenericImplementation <string>(); myInstance.Name = "test"; var services = new ServiceConnect.Container.Default.Container(); services.RegisterFor(myInstance, typeof(IMyInterface <string>)); // Act var result = services.Resolve(typeof(IMyInterface <string>)); // Assert Assert.NotNull(result); Assert.Equal("test", ((IMyInterface <string>)result).Name); }