protected override async Task <Result> HandleRequest(UpdateRequest request, CancellationToken cancellationToken) { Domain.Sample.Sample item = await _sampleRepository.GetByIdAsync(request.Id); // sample must exist request.AddNotifications(item.Exists()); if (!request.IsValid) { return(request.GetResult()); } // gets random desc from adapter string randomDesc = await _sampleAdapter.GetRandomDescriptionAsync(); // random desc should contain a non-empty string request.AddNotifications(randomDesc.NotEmpty()); string newDescription = $"{request.Description} {randomDesc}"; // attempts to change description and saves result in the notifications collection request.AddNotifications(item.ChangeDescription(newDescription)); if (!request.IsValid) { return(request.GetResult()); } await _sampleRepository.UpdateAsync(item); await _unitOfWork.SaveAsync(); return(request.GetResult()); }
protected override async Task <EntityResult <SampleDto> > HandleRequest( GetByIdRequest request, CancellationToken cancellationToken) { Domain.Sample.Sample item = await _sampleRepository.GetByIdAsync(request.Id); request.AddNotifications(item.Exists()); return(!request.IsValid ? new EntityResult <SampleDto>(request.Notifications, null) : new EntityResult <SampleDto>(request.Notifications, SampleDto.FromEntity(item))); }
protected override async Task <Result> HandleRequest(DeleteRequest request, CancellationToken cancellationToken) { Domain.Sample.Sample item = await _sampleRepository.GetByIdAsync(request.Id); request.AddNotifications(item.Exists()); if (request.IsValid) { await _sampleRepository.DeleteAsync(item); await _unitOfWork.SaveAsync(); } return(request.GetResult()); }
public static SampleDto FromEntity(Domain.Sample.Sample item) { return(new SampleDto { Id = item.Id, Description = item.Description }); }
public void Sample_Should_Be_Valid(string id, string description, bool expected) { Domain.Sample.Sample sample = new Domain.Sample.Sample(id, description); Assert.Equal(sample.IsValid, expected); }