public void Validate_ExceptionInWrappedKernel_ThrowsUpliftVanKernelWrapperException() { // Setup var exceptionToThrow = new Exception(); var mocks = new MockRepository(); var calculator = mocks.Stub <ICalculator>(); var validator = mocks.Stub <IValidator>(); validator.Stub(v => v.Validate()).Throw(exceptionToThrow); mocks.ReplayAll(); var kernel = new UpliftVanKernelWrapper(calculator, validator); // Call void Call() => kernel.Validate(); // Assert var exception = Assert.Throws <UpliftVanKernelWrapperException>(Call); Assert.AreSame(exceptionToThrow, exception.InnerException); Assert.AreEqual(exception.InnerException.Message, exception.Message); }
public void Validate_ValidationCompleted_ReturnsValidationMessages() { // Setup var validationOutput = new ValidationOutput { Messages = new Message[0] }; var mocks = new MockRepository(); var calculator = mocks.Stub <ICalculator>(); var validator = mocks.Stub <IValidator>(); validator.Stub(v => v.Validate()).Return(validationOutput); mocks.ReplayAll(); var kernel = new UpliftVanKernelWrapper(calculator, validator); // Call IEnumerable <Message> validationMessages = kernel.Validate(); // Assert Assert.AreSame(validationOutput.Messages, validationMessages); mocks.VerifyAll(); }