public async Task Handle_DaoReturnsFailure_ReturnFailure(GetRedirectPath queryFixture, string errorMessageFixture) { var urlDaoMock = A.Fake <IUrlDao>(); A.CallTo( () => urlDaoMock .GetByShortPath(A <string> .That.IsEqualTo(queryFixture.ShortPath))) .Returns(Task.FromResult(Result.Fail <Url>(errorMessageFixture))); var sut = new GetRedirectPathHandler(urlDaoMock); var result = await sut.Handle(queryFixture, CancellationToken.None); result.IsFailure.Should().BeTrue(); result.Error.Should().Be(errorMessageFixture); }
public async Task Handle_DaoReturnsPath_ReturnPath(GetRedirectPath queryFixture, Url urlFixture) { var urlDaoMock = A.Fake <IUrlDao>(); A.CallTo( () => urlDaoMock .GetByShortPath(A <string> .That.IsEqualTo(queryFixture.ShortPath))) .Returns(Task.FromResult(Result.Ok(urlFixture))); var sut = new GetRedirectPathHandler(urlDaoMock); var result = await sut.Handle(queryFixture, CancellationToken.None); result.IsSuccess.Should().BeTrue(); result.Value.Should().Be(urlFixture.Path); }
public Task <Result <string> > Handle( GetRedirectPath request, CancellationToken cancellationToken) => _urlDao .GetByShortPath(request.ShortPath) .OnSuccess(url => url.Path);