public void Setup_OkState() { _journeyValidatorMock = new Mock <IJourneyValidator>(); _journeyValidatorMock.Setup(r => r.ExistsStepAsync(_journeyId, _stepId, default)).Returns(Task.FromResult(true)); _stepValidatorMock = new Mock <IStepValidator>(); _stepValidatorMock.Setup(r => r.HasModeAsync(_modeId, _stepId, default)).Returns(Task.FromResult(true)); _modeValidatorMock = new Mock <IModeValidator>(); _modeValidatorMock.Setup(r => r.ExistsAsync(_modeId, default)).Returns(Task.FromResult(true)); _rowVersionValidatorMock = new Mock <IRowVersionValidator>(); _rowVersionValidatorMock.Setup(r => r.IsValid(_rowVersion)).Returns(true); _responsibleValidatorMock = new Mock <IResponsibleValidator>(); _command = new UpdateStepCommand(_journeyId, _stepId, _modeId, _responsibleCode, _title, AutoTransferMethod.None, _rowVersion); _dut = new UpdateStepCommandValidator( _journeyValidatorMock.Object, _stepValidatorMock.Object, _modeValidatorMock.Object, _responsibleValidatorMock.Object, _rowVersionValidatorMock.Object); }
public void Validate_ShouldBeValid_WhenSettingNoneAutoTransferMethod_AndAExistingStepHasNone() { var autoTransferMethod = AutoTransferMethod.None; _journeyValidatorMock.Setup(r => r.HasOtherStepWithAutoTransferMethodAsync(_journeyId, _stepId, autoTransferMethod, default)).Returns(Task.FromResult(true)); _command = new UpdateStepCommand(_journeyId, _stepId, _modeId, _responsibleCode, _title, autoTransferMethod, _rowVersion); var result = _dut.Validate(_command); Assert.IsTrue(result.IsValid); }
public void Constructor_ShouldSetProperties() { var dut = new UpdateStepCommand(1, 2, 3, "CODE", "TitleNew", AutoTransferMethod.OnRfocSign, "AAAAAAAAABA="); Assert.AreEqual(1, dut.JourneyId); Assert.AreEqual(2, dut.StepId); Assert.AreEqual(3, dut.ModeId); Assert.AreEqual("CODE", dut.ResponsibleCode); Assert.AreEqual("TitleNew", dut.Title); Assert.AreEqual(AutoTransferMethod.OnRfocSign, dut.AutoTransferMethod); Assert.AreEqual("AAAAAAAAABA=", dut.RowVersion); }
public void Validate_ShouldFail_WhenInvalidRowVersion() { const string invalidRowVersion = "String"; _command = new UpdateStepCommand(_journeyId, _stepId, _modeId, _responsibleCode, _title, AutoTransferMethod.None, invalidRowVersion); _rowVersionValidatorMock.Setup(r => r.IsValid(invalidRowVersion)).Returns(false); var result = _dut.Validate(_command); Assert.IsFalse(result.IsValid); Assert.AreEqual(1, result.Errors.Count); Assert.IsTrue(result.Errors[0].ErrorMessage.StartsWith("Not a valid row version!")); }
public async Task <ActionResult> Update([FromBody] UpdateStepCommand updateStepCommand) { try { var result = await Mediator.Send(updateStepCommand); return(Ok(result.Step)); } catch (UnauthorizedException e) { return(StatusCode(401, e.Message)); } catch (Exception e) { return(BadRequest(e.Message)); } }
public async Task UpdateStepSuccessful() { var newName = "new name"; var request = new UpdateStepCommand() { Id = Utilities.P1Step1.Id, Name = newName }; var response = await Client.PutAsync("/api/Step", Utilities.GetRequestContent(request)); response.EnsureSuccessStatusCode(); var responseContent = await Utilities.GetResponseContent <StepDto>(response); responseContent.Name.Should().Be(newName); }
public async Task <IActionResult> UpdateStep(string buildID, int stepIndex, [FromBody] UpdateStepInputModel inputModel) { if (TryValidateModel(inputModel)) { try { var command = _mapper.Map <UpdateStepInputModel, UpdateStepCommand>(inputModel, UpdateStepCommand.FromBuild(buildID, stepIndex)); await _mediator.Send(command); return(Ok()); } catch (Exception exception) { return(BadRequest(BadRequestOutputModel.FromException(exception))); } } return(BadRequest(ModelState)); }
public void Setup() { // Arrange _plantProviderMock = new Mock <IPlantProvider>(); _plantProviderMock.Setup(p => p.Plant).Returns(TestPlant); var journeyRepositoryMock = new Mock <IJourneyRepository>(); _journey = new Journey(TestPlant, "J"); _journey.SetProtectedIdForTesting(_journeyId); _modeRepositoryMock = new Mock <IModeRepository>(); _modeMock = new Mock <Mode>(); _modeMock.SetupGet(s => s.Plant).Returns(TestPlant); _modeMock.SetupGet(x => x.Id).Returns(_modeId); _modeRepositoryMock .Setup(r => r.GetByIdAsync(_modeId)) .Returns(Task.FromResult(_modeMock.Object)); _responsible = new Responsible(TestPlant, _responsibleCode, "D1"); _responsible.SetProtectedIdForTesting(_responsibleId); _responsible2 = new Responsible(TestPlant, _responsibleCode2, "D2"); _responsible2.SetProtectedIdForTesting(_responsibleId2); _responsibleRepositoryMock = new Mock <IResponsibleRepository>(); _responsibleRepositoryMock .Setup(r => r.GetByCodeAsync(_responsibleCode)) .Returns(Task.FromResult(_responsible)); _responsibleRepositoryMock .Setup(r => r.GetByCodeAsync(_responsibleCode2)) .Returns(Task.FromResult(_responsible2)); _responsibleRepositoryMock.Setup(r => r.Add(It.IsAny <Responsible>())) .Callback <Responsible>(c => _addedResponsible = c); _pcsResponsibleMock = new Mock <PCSResponsible>(); _responsibleApiServiceMock = new Mock <IResponsibleApiService>(); _responsibleApiServiceMock.Setup(r => r.TryGetResponsibleAsync(TestPlant, _responsibleCode)) .Returns(Task.FromResult(_pcsResponsibleMock.Object)); _step = new Step(TestPlant, _oldTitle, _modeMock.Object, _responsible) { AutoTransferMethod = _oldAutoTransferMethod }; _step.SetProtectedIdForTesting(_stepId); _journey.AddStep(_step); _responsibleApiServiceMock.Setup(s => s.TryGetResponsibleAsync(TestPlant, _responsibleCode)) .Returns(Task.FromResult(new PCSResponsible { Description = "ResponsibleTitle" })); journeyRepositoryMock.Setup(s => s.GetByIdAsync(_journeyId)) .Returns(Task.FromResult(_journey)); _command = new UpdateStepCommand(_journeyId, _stepId, _modeId, _responsibleCode, _newTitle, _newAutoTransferMethod, _rowVersion); _commandWithResponsible2 = new UpdateStepCommand(_journeyId, _stepId, _modeId, _responsibleCode2, _newTitle, _newAutoTransferMethod, _rowVersion); _dut = new UpdateStepCommandHandler( journeyRepositoryMock.Object, _modeRepositoryMock.Object, _responsibleRepositoryMock.Object, UnitOfWorkMock.Object, _plantProviderMock.Object, _responsibleApiServiceMock.Object); }