public void Validate_WhenSideIsInvalid_IsValidShouldBeFalse(byte[] content) { var command = new PayLoadCreateCommand("123456", content, SideEnum.Undefined); _payLoadRepository.GetByCorrelationIdAndSide(Arg.Any <string>(), Arg.Any <SideEnum>()).ReturnsNull(); var validationResult = _sut.Validate(command); validationResult.IsValid.Should().BeFalse(); }
public void Validate_WhenContentIsNull_IsValidShouldBeFalse() { var command = new PayLoadCreateCommand("123456", null, SideEnum.Left); _payLoadRepository.GetByCorrelationIdAndSide(Arg.Any <string>(), Arg.Any <SideEnum>()).ReturnsNull(); var validationResult = _sut.Validate(command); validationResult.IsValid.Should().BeFalse(); }
public void Validate_WhenCommandIsValidAndPayLoadNotExists_IsValidShouldBeTrue(byte[] content) { var command = new PayLoadCreateCommand("123456", content, SideEnum.Left); _payLoadRepository.GetByCorrelationIdAndSide(Arg.Any <string>(), Arg.Any <SideEnum>()).ReturnsNull(); var validationResult = _sut.Validate(command); validationResult.IsValid.Should().BeTrue(); }
public void Validate_WhenPayLoadAlreadyExists_IsValidShouldBeFalse(byte[] content, PayLoad payLoad) { var command = new PayLoadCreateCommand("123456", content, SideEnum.Left); _payLoadRepository.GetByCorrelationIdAndSide(command.CorrelationId, command.Side).Returns(payLoad); var validationResult = _sut.Validate(command); validationResult.IsValid.Should().BeFalse(); validationResult.Errors.Should().OnlyContain(x => x.ErrorCode.Equals("PayloadAlreadyExists")); }
public async void Handle_WhenPayLoadNotExist_ShouldAddItToRepository(PayLoadCreateCommand command) { var result = await _sut.Handle(command, new CancellationToken()); result.Should().BeTrue(); await _payLoadRepository.Received(1).Add(Arg.Is <PayLoad>(p => p.CorrelationId == command.CorrelationId && p.Content == command.Content && p.Side == command.Side)); }
public async void Handle_WhenPayLoadCreated_ShouldRaisePayLoadCreatedEvent(PayLoadCreateCommand command) { var result = await _sut.Handle(command, new CancellationToken()); result.Should().BeTrue(); await _bus.Received(1).RaiseEvent(Arg.Is <PayLoadCreatedEvent>(p => p.EntityId != Guid.Empty && p.CorrelationId == command.CorrelationId && p.Content == command.Content && p.Side == command.Side)); }
public async void Handle_WhenValidationResultIsInvalid_ShouldThrowValidationException(PayLoadCreateCommand command, List <ValidationFailure> validationFailures) { var validationResult = new ValidationResult(validationFailures); _validator.Validate(Arg.Any <PayLoadCreateCommand>()).Returns(validationResult); var next = new RequestHandlerDelegate <bool>(() => Task.FromResult(true)); var ex = await Assert.ThrowsAsync <ValidationException>(() => _sut.Handle(command, new CancellationToken(), next)); ex.Errors.Should().BeEquivalentTo(validationFailures); }
public async void Handle_WhenValidationResultIsValid_ShouldCallNextAndReturnTrue(PayLoadCreateCommand command) { var validationResult = new ValidationResult(); _validator.Validate(Arg.Any <PayLoadCreateCommand>()).Returns(validationResult); var next = new RequestHandlerDelegate <bool>(() => Task.FromResult(true)); var result = await _sut.Handle(command, new CancellationToken(), next); result.Should().BeTrue(); }
public async void Create_GuardTests(string correlationId, CreateLeftPayLoadRequest request, PayLoadCreateCommand payLoadCreateCommand) { _mapper.Map <PayLoadCreateCommand>(request, opt => opt.Items["correlationId"] = correlationId).Returns(payLoadCreateCommand); var result = await _sut.Create(correlationId, request); }