public void Handle_GivenSuccessfulUseCaseResponse_SetsRefreshToken()
    {
        // arrange
        const string token     = "777888AAABBB";
        var          presenter = new ExchangeRefreshTokenPresenter();

        // act
        presenter.Handle(new Core.DTO.UseCaseResponses.ExchangeRefreshTokenResponse(null, token, true));

        // assert
        Core.DTO.UseCaseResponses.ExchangeRefreshTokenResponse data = JsonSerializer.DeSerializeObject <Core.DTO.UseCaseResponses.ExchangeRefreshTokenResponse>(presenter.ContentResult.Content);
        Assert.Equal(token, data.RefreshToken);
    }
    public void Handle_GivenSuccessfulUseCaseResponse_SetsAccessToken()
    {
        // arrange
        const string token     = "777888AAABBB";
        var          presenter = new LoginPresenter();

        // act
        presenter.Handle(new LoginResponse(new AccessToken(token, 0), "", true));

        // assert
        LoginResponse data = JsonSerializer.DeSerializeObject <LoginResponse>(presenter.ContentResult.Content);

        Assert.Equal(token, data.AccessToken.Token);
    }
Example #3
0
    public void Handle_GivenSuccessfulUseCaseResponse_SetsId()
    {
        // arrange
        var presenter = new RegisterUserPresenter();

        // act
        presenter.Handle(new UseCaseResponseMessage("1234", true));

        // assert
        UseCaseResponseMessage data = JsonSerializer.DeSerializeObject <UseCaseResponseMessage>(presenter.ContentResult.Content);

        Assert.True(data.Success);
        Assert.Equal("1234", data.Id);
    }
    public void Handle_GivenSuccessfulUseCaseResponse_SetsAccessToken()
    {
        // arrange
        const string token     = "777888AAABBB";
        var          presenter = new ExchangeRefreshTokenPresenter();

        // act
        presenter.Handle(new Core.DTO.UseCaseResponses.ExchangeRefreshTokenResponse(new AccessToken(token, 0), "", true));

        // assert
        Core.DTO.UseCaseResponses.ExchangeRefreshTokenResponse data = JsonSerializer.DeSerializeObject <Core.DTO.UseCaseResponses.ExchangeRefreshTokenResponse>(presenter.ContentResult.Content);
        Assert.NotNull(data);
        Assert.NotNull(data.AccessToken);
        Assert.False(string.IsNullOrEmpty(data.AccessToken.Token));
        Assert.Equal(token, data.AccessToken.Token);
    }
    public void Handle_GivenFailedUseCaseResponse_SetsErrors()
    {
        // arrange
        var presenter = new LoginPresenter();

        // act
        presenter.Handle(new LoginResponse(new List <Error> {
            new Error(HttpStatusCode.BadRequest.ToString(), "Invalid username/password")
        }));

        // assert
        Models.Response.LoginResponse response = JsonSerializer.DeSerializeObject <Models.Response.LoginResponse>(presenter.ContentResult.Content);
        Assert.Equal((int)HttpStatusCode.Unauthorized, presenter.ContentResult.StatusCode);
        Assert.NotNull(response);
        Assert.NotNull(response.Errors);
        Assert.NotEmpty(response.Errors);
        Assert.False(response.Success);
        Assert.NotNull(response.Errors);
        Assert.False(string.IsNullOrEmpty(response.Errors.First().Code));
        Assert.False(string.IsNullOrEmpty(response.Errors.First().Description));
        Assert.Equal(HttpStatusCode.BadRequest.ToString(), response.Errors.First().Code);
        Assert.Equal("Invalid username/password", response.Errors.First().Description);
    }