public void Execute(TestInput inputTo, IRespondWithSuccessOrError <TestResult, ErrorOutput> presenter) { var context = new TestContext { Value1 = inputTo.a, Value2 = inputTo.b }; var workflowResult = new SagaBuilder <TestContext>() .With_Context_State(context) .Using_Step(_addTask) .Using_Step(_plusTenTask) .Using_Step((ctx) => { var input = new TestInput { a = ctx.Value1, b = ctx.Result }; var propertyPresenter = new PropertyPresenter <TestResult, ErrorOutput>(); _useCase.Execute(input, propertyPresenter); if (propertyPresenter.IsErrorResponse()) { throw new Exception(); } ctx.Result = propertyPresenter.SuccessContent.Result; }) .With_Finish_Actions(Respond_With_Success(presenter), Respond_With_Error(presenter)) .Run(); }
public void IsErrorResponse_WhenNoErrors_ShouldReturnFalse() { //---------------Set up test pack------------------- var presenter = new PropertyPresenter <object, ErrorOutputMessage>(); //---------------Execute Test ---------------------- var result = presenter.IsErrorResponse(); //---------------Test Result ----------------------- Assert.False(result); }
public void IsErrorResponse_WhenNoErrors_ShouldReturnFalse() { //---------------Arrange------------------- var presenter = new PropertyPresenter <object, ErrorOutput>(); //---------------Act------------------- var result = presenter.IsErrorResponse(); //---------------Assert------------------- Assert.False(result); }
public void IsErrorResponse_WhenErrorObjectNull_ShouldReturnFalse() { //---------------Set up test pack------------------- var successObject = "all good"; var presenter = new PropertyPresenter <string, ErrorOutputMessage>(); //---------------Execute Test ---------------------- presenter.Respond(successObject); //---------------Test Result ----------------------- Assert.IsFalse(presenter.IsErrorResponse()); }
public void IsErrorResponse_WhenErrors_ShouldReturnTrue() { //---------------Arrange------------------- var presenter = new PropertyPresenter <object, ErrorOutput>(); presenter.Respond(new ErrorOutput()); //---------------Act------------------- var result = presenter.IsErrorResponse(); //---------------Assert------------------- Assert.True(result); }
public void IsErrorResponse_WhenErrorObjectNotNull_ShouldReturnTrue() { //---------------Set up test pack------------------- var errorObject = new ErrorOutputMessage(); errorObject.AddError("stuff went wrong"); var presenter = new PropertyPresenter <string, ErrorOutputMessage>(); //---------------Execute Test ---------------------- presenter.Respond(errorObject); //---------------Test Result ----------------------- Assert.IsTrue(presenter.IsErrorResponse()); }
public void Execute(RenderWordInput inputTo, IRespondWithSuccessOrError <IFileOutput, ErrorOutput> presenter) { var wordPresenter = new PropertyPresenter <IFileOutput, ErrorOutput>(); _wordUsecase.Execute(inputTo, wordPresenter); if (wordPresenter.IsErrorResponse()) { presenter.Respond(wordPresenter.ErrorContent); return; } var pdfInput = Create_Pdf_Input(wordPresenter); _pdfUsecase.Execute(pdfInput, presenter); }
public void Execute_WhenRenderErrors_ShouldRespondWithErrors() { //---------------Arrange------------------- var gatewayResult = new RenderedDocumentOutput { ErrorMessages = new List <string> { "error" } }; var pdfGateway = Create_Report_Gateway(gatewayResult); var input = new RenderPdfInput { Base64DocxReport = "cHVzc3k=", FileName = "report.docx" }; var presenter = new PropertyPresenter <IFileOutput, ErrorOutput>(); var usecase = new RenderWordToPdfUseCase(pdfGateway); //---------------Act---------------------- usecase.Execute(input, presenter); //---------------Assert----------------------- Assert.True(presenter.IsErrorResponse()); }
public void Execute_WhenRenderErrors_ShouldRespondWithErrors() { //---------------Arrange------------------- var gatewayResult = new RenderedDocumentOutput { ErrorMessages = new List <string> { "error" } }; var gateway = Create_Report_Gateway(gatewayResult); var input = new RenderWordInput { JsonModel = "", ReportName = "Test.docx", TemplateName = "Test" }; var presenter = new PropertyPresenter <IFileOutput, ErrorOutput>(); var usecase = new RenderWordUseCase(gateway); //---------------Act---------------------- usecase.Execute(input, presenter); //---------------Assert----------------------- Assert.True(presenter.IsErrorResponse()); }
private bool RenderingErrors(PropertyPresenter <string, ErrorOutput> presenter) { return(presenter.IsErrorResponse()); }