public async Task ShouldUpdateAdditionalInfoDefinition() { //arrange var loggedUser = await RunAsUserAsync("scott101@localhost", "Pa$$w0rd!"); var additionalInfoDefinitionToCreate = new Faker <AdditionalInfoDefinitionCreateOrEditDto>("en") .RuleFor(a => a.Id, f => f.Random.Guid()) .RuleFor(a => a.InfoName, f => f.Lorem.Word()) .RuleFor(a => a.TypeOfField, f => TypeOfField.Text) .Generate(); var additionalInfoDefinitionId = await SendAsync(new CreateAdditionalInfoDefinitionCommand(additionalInfoDefinitionToCreate)); var additionalInfoDefinitionToModify = new Faker <AdditionalInfoDefinitionCreateOrEditDto>("en") .RuleFor(a => a.Id, f => additionalInfoDefinitionId) .RuleFor(a => a.InfoName, f => f.Lorem.Word()) .RuleFor(a => a.TypeOfField, f => TypeOfField.Number) .Generate(); //act var command = new EditAdditionalInfoDefinitionCommand(additionalInfoDefinitionToModify); await SendAsync(command); var modifiedAdditionalInfoDefinition = await FindByGuidAsync <AdditionalInfoDefinition>(additionalInfoDefinitionId); //assert modifiedAdditionalInfoDefinition.Id.Should().Be(additionalInfoDefinitionToModify.Id); modifiedAdditionalInfoDefinition.InfoName.Should().Be(additionalInfoDefinitionToModify.InfoName); modifiedAdditionalInfoDefinition.InfoType.Should().Be("int"); modifiedAdditionalInfoDefinition.LastModifiedBy.Should().Be(loggedUser); modifiedAdditionalInfoDefinition.LastModified.Should().BeCloseTo(DateTime.UtcNow, new TimeSpan(0, 0, 1)); }
public void ShouldNotCallHandleIfTagNotExist() { dbSetAdditionalInfoDefinition.Setup(x => x.FindAsync(id)).Returns(null); context.Setup(x => x.AdditionalInfoDefinitions).Returns(dbSetAdditionalInfoDefinition.Object); EditAdditionalInfoDefinitionCommandHandler editAdditionalInfoDefinitionCommandHandler = new EditAdditionalInfoDefinitionCommandHandler(context.Object, stringLocalizer.Object, mapper.Object); EditAdditionalInfoDefinitionCommand editAdditionalInfoDefinitionCommand = new EditAdditionalInfoDefinitionCommand(additionalInfoDefinitionDto); Func <Task> act = async() => await editAdditionalInfoDefinitionCommandHandler.Handle(editAdditionalInfoDefinitionCommand, new CancellationToken()); act.Should().ThrowAsync <NotFoundException>(); }
public void ShouldNotCallHandleIfNotSavedChanges() { dbSetAdditionalInfoDefinition.Setup(x => x.FindAsync(id)).Returns(new ValueTask <AdditionalInfoDefinition>(Task.FromResult(additionalInfoDefinition))); context.Setup(x => x.AdditionalInfoDefinitions).Returns(dbSetAdditionalInfoDefinition.Object); context.Setup(x => x.SaveChangesAsync(It.IsAny <CancellationToken>())).Returns(Task.FromResult(0)); EditAdditionalInfoDefinitionCommandHandler editAdditionalInfoDefinitionCommandHandler = new EditAdditionalInfoDefinitionCommandHandler(context.Object, stringLocalizer.Object, mapper.Object); EditAdditionalInfoDefinitionCommand editAdditionalInfoDefinitionCommand = new EditAdditionalInfoDefinitionCommand(additionalInfoDefinitionDto); Func <Task> act = async() => await editAdditionalInfoDefinitionCommandHandler.Handle(editAdditionalInfoDefinitionCommand, new CancellationToken()); act.Should().ThrowAsync <RestException>(); }
public async Task ShouldCallHandle() { dbSetAdditionalInfoDefinition.Setup(x => x.FindAsync(id)).Returns(new ValueTask <AdditionalInfoDefinition>(Task.FromResult(additionalInfoDefinition))); context.Setup(x => x.AdditionalInfoDefinitions).Returns(dbSetAdditionalInfoDefinition.Object); context.Setup(x => x.SaveChangesAsync(It.IsAny <CancellationToken>())).Returns(Task.FromResult(1)); EditAdditionalInfoDefinitionCommandHandler editAdditionalInfoDefinitionCommandHandler = new EditAdditionalInfoDefinitionCommandHandler(context.Object, stringLocalizer.Object, mapper.Object); EditAdditionalInfoDefinitionCommand editAdditionalInfoDefinitionCommand = new EditAdditionalInfoDefinitionCommand(additionalInfoDefinitionDto); var result = await editAdditionalInfoDefinitionCommandHandler.Handle(editAdditionalInfoDefinitionCommand, new CancellationToken()); mapper.Verify(x => x.Map(editAdditionalInfoDefinitionCommand, additionalInfoDefinition), Times.Once); result.Should().Be(id); }