diff --git a/satellite/console/consoleweb/consoleapi/auth_test.go b/satellite/console/consoleweb/consoleapi/auth_test.go index 69f00838fe72..976b55ad82fd 100644 --- a/satellite/console/consoleweb/consoleapi/auth_test.go +++ b/satellite/console/consoleweb/consoleapi/auth_test.go @@ -154,6 +154,45 @@ func TestAuth_Register(t *testing.T) { }) } +func TestAuth_UpdateUser(t *testing.T) { + testplanet.Run(t, testplanet.Config{ + SatelliteCount: 1, StorageNodeCount: 0, UplinkCount: 1, + }, func(t *testing.T, ctx *testcontext.Context, planet *testplanet.Planet) { + sat := planet.Satellites[0] + service := sat.API.Console.Service + + user, _, err := service.GetUserByEmailWithUnverified(ctx, planet.Uplinks[0].User[sat.ID()].Email) + require.NoError(t, err) + require.NotNil(t, user) + + userCtx, err := sat.UserContext(ctx, user.ID) + require.NoError(t, err) + + newName := "new name" + shortName := "NN" + err = service.UpdateAccount(userCtx, newName, shortName) + require.NoError(t, err) + + user, _, err = service.GetUserByEmailWithUnverified(ctx, planet.Uplinks[0].User[sat.ID()].Email) + require.NoError(t, err) + require.Equal(t, newName, user.FullName) + require.Equal(t, shortName, user.ShortName) + + err = service.UpdateAccount(userCtx, newName, "") + require.NoError(t, err) + + user, _, err = service.GetUserByEmailWithUnverified(ctx, planet.Uplinks[0].User[sat.ID()].Email) + require.NoError(t, err) + require.Equal(t, newName, user.FullName) + require.Equal(t, "", user.ShortName) + + // empty full name not allowed + err = service.UpdateAccount(userCtx, "", shortName) + require.Error(t, err) + require.True(t, console.ErrValidation.Has(err)) + }) +} + func TestAuth_RegisterWithInvitation(t *testing.T) { testplanet.Run(t, testplanet.Config{ SatelliteCount: 1, StorageNodeCount: 0, UplinkCount: 1, diff --git a/satellite/console/consoleweb/endpoints_test.go b/satellite/console/consoleweb/endpoints_test.go index 59a03a9b7463..0fcfecd5791b 100644 --- a/satellite/console/consoleweb/endpoints_test.go +++ b/satellite/console/consoleweb/endpoints_test.go @@ -91,6 +91,28 @@ func TestAuth(t *testing.T) { require.NotEmpty(test.t, userIdentifier.ID) } + { // Update_AccountInfo + newName := "new name" + shortName := "NN" + resp, _ := test.request(http.MethodPatch, "/auth/account", test.toJSON(map[string]string{ + "fullName": newName, + "shortName": shortName, + })) + require.Equal(test.t, http.StatusOK, resp.StatusCode) + + resp, body := test.request(http.MethodGet, "/auth/account", nil) + require.Equal(test.t, http.StatusOK, resp.StatusCode) + require.Contains(test.t, body, newName) + require.Contains(test.t, body, shortName) + + // empty full name not allowed + resp, _ = test.request(http.MethodPatch, "/auth/account", test.toJSON(map[string]string{ + "fullName": "", + "shortName": shortName, + })) + require.Equal(test.t, http.StatusBadRequest, resp.StatusCode) + } + { // Get_FreezeStatus resp, body := test.request(http.MethodGet, "/auth/account/freezestatus", nil) require.Equal(test.t, http.StatusOK, resp.StatusCode)