From 98b9fc1fe772ff7004f3dec710d25f86dc198d6c Mon Sep 17 00:00:00 2001 From: Stefan Kostic Date: Thu, 24 Feb 2022 22:54:35 +0100 Subject: [PATCH] Add login by refresh token test --- integration_tests/auth_test.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/integration_tests/auth_test.go b/integration_tests/auth_test.go index bd92753..a5a6f49 100644 --- a/integration_tests/auth_test.go +++ b/integration_tests/auth_test.go @@ -66,7 +66,24 @@ func (suite *UserAuthTestSuite) TestAuth() { assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(&responseBody)) assert.NotEmpty(suite.T(), responseBody.AccessToken) assert.NotEmpty(suite.T(), responseBody.RefreshToken) - fmt.Printf("Succesfully got a token: %s\n", responseBody.AccessToken) + fmt.Printf("Succesfully got a token using login and password: %s\n", responseBody.AccessToken) + + // login again with only refresh token + assert.NoError(suite.T(), json.NewEncoder(&buf).Encode(&controllers.AuthRequestBody{ + RefreshToken: responseBody.RefreshToken, + })) + req = httptest.NewRequest(http.MethodPost, "/auth", &buf) + req.Header.Set(echo.HeaderContentType, echo.MIMEApplicationJSON) + rec = httptest.NewRecorder() + c = suite.echo.NewContext(req, rec) + controller = controllers.NewAuthController(suite.Service) + responseBody = &controllers.AuthResponseBody{} + assert.NoError(suite.T(), controller.Auth(c)) + assert.Equal(suite.T(), http.StatusOK, rec.Code) + assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(&responseBody)) + assert.NotEmpty(suite.T(), responseBody.AccessToken) + assert.NotEmpty(suite.T(), responseBody.RefreshToken) + fmt.Printf("Succesfully got a token using refresh token only: %s\n", responseBody.AccessToken) } func TestUserAuthTestSuite(t *testing.T) {