public async Task GetBySlug__Works_Properly() { // Arrange var publishCmd = new PublishArticle { AuthorId = Guid.NewGuid().ToString(), Body = Guid.NewGuid().ToString(), Description = Guid.NewGuid().ToString(), Title = "Some Title Here" }; var articleView = await _service.Publish(publishCmd, null); var query = new BySlug { Slug = articleView.Slug }; // Act var slug = await _service.GetBySlug(query, null); // Assert slug.HasResult.Should().BeTrue(); slug.View.Should().NotBeNull(); }
public override async Task <BySlugResult> GetBySlug(BySlug query, ServerCallContext context) => (await _repository.GetBySlugOrErrorAsync(query.Slug)) .FlatMap(MapSlugResultByArticleOrError) .ValueOr(Empty);