public void Should_not_invoke_end_if_begin_was_not_invoked() { var builder = new FakeBuilder(); var unitOfWorkThatThrowsFromBegin = new UnitOfWorkThatThrowsFromBegin(); var unitOfWork = new UnitOfWork(); builder.Register <IManageUnitsOfWork>(unitOfWorkThatThrowsFromBegin, unitOfWork); //since it is a single exception then it will not be an AggregateException Assert.That(async() => await InvokeBehavior(builder), Throws.InvalidOperationException); Assert.False(unitOfWork.EndCalled); }
public void Should_not_invoke_end_if_begin_was_not_invoked() { var services = new ServiceCollection(); var unitOfWorkThatThrowsFromBegin = new UnitOfWorkThatThrowsFromBegin(); var unitOfWork = new UnitOfWork(); services.AddTransient <IManageUnitsOfWork>(sp => unitOfWorkThatThrowsFromBegin); services.AddTransient <IManageUnitsOfWork>(sp => unitOfWork); //since it is a single exception then it will not be an AggregateException Assert.That(async() => await InvokeBehavior(services), Throws.InvalidOperationException); Assert.False(unitOfWork.EndCalled); }
public void Should_not_invoke_end_if_begin_was_not_invoked() { var builder = new FakeBuilder(); var unitOfWorkThatThrowsFromBegin = new UnitOfWorkThatThrowsFromBegin(); var unitOfWork = new UnitOfWork(); builder.Register<IManageUnitsOfWork>(unitOfWorkThatThrowsFromBegin, unitOfWork); //since it is a single exception then it will not be an AggregateException Assert.That(async () => await InvokeBehavior(builder), Throws.InvalidOperationException); Assert.False(unitOfWork.EndCalled); }
public void Should_invoke_ends_on_all_begins_that_was_called_even_when_begin_throws() { var builder = new FakeBuilder(); var normalUnitOfWork = new UnitOfWork(); var unitOfWorkThatThrows = new UnitOfWorkThatThrowsFromBegin(); var unitOfWorkThatIsNeverCalled = new UnitOfWork(); builder.Register <IManageUnitsOfWork>(normalUnitOfWork, unitOfWorkThatThrows, unitOfWorkThatIsNeverCalled); Assert.That(async() => await InvokeBehavior(builder), Throws.InvalidOperationException); Assert.True(normalUnitOfWork.EndCalled); Assert.True(unitOfWorkThatThrows.EndCalled); Assert.False(unitOfWorkThatIsNeverCalled.EndCalled); }
public void Should_invoke_ends_on_all_begins_that_was_called_even_when_begin_throws() { var services = new ServiceCollection(); var normalUnitOfWork = new UnitOfWork(); var unitOfWorkThatThrows = new UnitOfWorkThatThrowsFromBegin(); var unitOfWorkThatIsNeverCalled = new UnitOfWork(); services.AddTransient <IManageUnitsOfWork>(sp => normalUnitOfWork); services.AddTransient <IManageUnitsOfWork>(sp => unitOfWorkThatThrows); services.AddTransient <IManageUnitsOfWork>(sp => unitOfWorkThatIsNeverCalled); Assert.That(async() => await InvokeBehavior(services), Throws.InvalidOperationException); Assert.True(normalUnitOfWork.EndCalled); Assert.True(unitOfWorkThatThrows.EndCalled); Assert.False(unitOfWorkThatIsNeverCalled.EndCalled); }
public void Should_invoke_ends_on_all_begins_that_was_called_even_when_begin_throws() { var builder = new FakeBuilder(); var normalUnitOfWork = new UnitOfWork(); var unitOfWorkThatThrows = new UnitOfWorkThatThrowsFromBegin(); var unitOfWorkThatIsNeverCalled = new UnitOfWork(); builder.Register<IManageUnitsOfWork>(normalUnitOfWork, unitOfWorkThatThrows, unitOfWorkThatIsNeverCalled); Assert.That(async () => await InvokeBehavior(builder), Throws.InvalidOperationException); Assert.True(normalUnitOfWork.EndCalled); Assert.True(unitOfWorkThatThrows.EndCalled); Assert.False(unitOfWorkThatIsNeverCalled.EndCalled); }