public void ConstructorInjectionBehavior_ChangedBeforeAnyRegistrations_ChangesThePropertyToTheSetInstance() { // Arrange var expectedBehavior = new AlternativeDependencyInjectionBehavior(); var container = new Container(); // Act container.Options.DependencyInjectionBehavior = expectedBehavior; // Assert Assert.IsTrue(object.ReferenceEquals(expectedBehavior, container.Options.DependencyInjectionBehavior), "The set_ConstructorInjectionBehavior did not work."); }
public void ConstructorInjectionBehavior_ChangedAfterFirstCollectionRegistration_Fails() { // Arrange var expectedBehavior = new AlternativeDependencyInjectionBehavior(); var container = new Container(); container.RegisterCollection <ILogger>(new[] { typeof(NullLogger) }); // Act Action action = () => container.Options.DependencyInjectionBehavior = expectedBehavior; // Assert AssertThat.ThrowsWithExceptionMessageContains <InvalidOperationException>( "DependencyInjectionBehavior property cannot be changed after the first registration", action); }
public void ConstructorInjectionBehavior_ChangedAfterFirstRegistration_Fails() { // Arrange var expectedBehavior = new AlternativeDependencyInjectionBehavior(); var container = new Container(); container.RegisterSingleton <object>("The first registration."); // Act Action action = () => container.Options.DependencyInjectionBehavior = expectedBehavior; // Assert AssertThat.ThrowsWithExceptionMessageContains <InvalidOperationException>( "DependencyInjectionBehavior property cannot be changed after the first registration", action); }