public void Given_rule_type_with_default_ctor_is_not_registered_when_getting_service_it_should_return_instance() { var serviceCollection = new ServiceCollection(); var sut = new ServiceProviderDependencyResolverAdapter(serviceCollection.BuildServiceProvider()); // Act Func <object> act = () => sut.GetService(typeof(TestRuleWithDefaultCtor)); // Assert act.Should().NotThrow().Which.Should().BeOfType <TestRuleWithDefaultCtor>(); }
public void Given_rule_type_with_dependency_are_both_not_registered_when_getting_service_it_should_throw() { var serviceCollection = new ServiceCollection(); var sut = new ServiceProviderDependencyResolverAdapter(serviceCollection.BuildServiceProvider()); // Act Func <object> act = () => sut.GetService(typeof(TestRuleWithDependency)); // Assert act.Should().Throw <InvalidOperationException>(); }
public void Given_service_is_not_registered_when_getting_service_it_should_return_null() { var serviceCollection = new ServiceCollection(); var sut = new ServiceProviderDependencyResolverAdapter(serviceCollection.BuildServiceProvider()); // Act Func <object> act = () => sut.GetService(typeof(object)); // Assert act.Should().NotThrow().Which.Should().BeNull(); }
public void Given_rule_type_with_dependency_and_dependency_is_registered_when_getting_service_it_should_not_throw() { IServiceCollection serviceCollection = new ServiceCollection() .AddTransient <Dependency>(); var sut = new ServiceProviderDependencyResolverAdapter(serviceCollection.BuildServiceProvider()); // Act Func <object> act = () => sut.GetService(typeof(TestRuleWithDependency)); // Assert act.Should().NotThrow().Which.Should().BeOfType <TestRuleWithDependency>(); }