satellite/admin: fix paid tier field on /api/apikeys/{apikey} endpoint
the field was not being set, so it would always show false in the response whether the user was paid tier or not. Updates storj/gateway-mt#321 Change-Id: I00ae751ac9118fc05b3c22bc6d2cb9600d0faaaf
This commit is contained in:
parent
25c21f03c3
commit
ad9b0dfc40
@ -183,8 +183,9 @@ func (server *Server) getAPIKey(w http.ResponseWriter, r *http.Request) {
|
|||||||
Name: project.Name,
|
Name: project.Name,
|
||||||
},
|
},
|
||||||
Owner: ownerData{
|
Owner: ownerData{
|
||||||
ID: user.ID,
|
ID: user.ID,
|
||||||
Email: user.Email,
|
Email: user.Email,
|
||||||
|
PaidTier: user.PaidTier,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -264,9 +264,36 @@ func TestAPIKeyManagementGet(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
}, func(t *testing.T, ctx *testcontext.Context, planet *testplanet.Planet) {
|
}, func(t *testing.T, ctx *testcontext.Context, planet *testplanet.Planet) {
|
||||||
|
user, err := planet.Satellites[0].AddUser(ctx, console.CreateUser{
|
||||||
|
FullName: "testuser123",
|
||||||
|
Email: "test@email.com",
|
||||||
|
}, 1)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
project, err := planet.Satellites[0].AddProject(ctx, user.ID, "testproject")
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
secret, err := macaroon.NewSecret()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
apiKey, err := macaroon.NewAPIKey(secret)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
apiKeyInfo, err := planet.Satellites[0].DB.Console().APIKeys().Create(ctx, apiKey.Head(), console.APIKeyInfo{
|
||||||
|
Name: "testkey",
|
||||||
|
ProjectID: project.ID,
|
||||||
|
Secret: secret,
|
||||||
|
})
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
userCtx, err := planet.Satellites[0].UserContext(ctx, user.ID)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
_, err = planet.Satellites[0].API.Console.Service.Payments().AddCreditCard(userCtx, "test")
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
address := planet.Satellites[0].Admin.Admin.Listener.Addr()
|
address := planet.Satellites[0].Admin.Admin.Listener.Addr()
|
||||||
apikey := planet.Uplinks[0].APIKey[planet.Satellites[0].ID()]
|
link := fmt.Sprintf("http://"+address.String()+"/api/apikeys/%s", apiKey.Serialize())
|
||||||
link := fmt.Sprintf("http://"+address.String()+"/api/apikeys/%s", apikey.Serialize())
|
|
||||||
|
|
||||||
req, err := http.NewRequestWithContext(ctx, http.MethodGet, link, nil)
|
req, err := http.NewRequestWithContext(ctx, http.MethodGet, link, nil)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
@ -300,29 +327,20 @@ func TestAPIKeyManagementGet(t *testing.T) {
|
|||||||
var apiResp response
|
var apiResp response
|
||||||
require.NoError(t, json.NewDecoder(resp.Body).Decode(&apiResp))
|
require.NoError(t, json.NewDecoder(resp.Body).Decode(&apiResp))
|
||||||
|
|
||||||
apiKeyInfo, err := planet.Satellites[0].DB.Console().APIKeys().GetByHead(ctx, apikey.Head())
|
|
||||||
require.NoError(t, err)
|
|
||||||
|
|
||||||
project, err := planet.Satellites[0].DB.Console().Projects().Get(ctx, apiKeyInfo.ProjectID)
|
|
||||||
require.NoError(t, err)
|
|
||||||
|
|
||||||
owner, err := planet.Satellites[0].DB.Console().Users().Get(ctx, project.OwnerID)
|
|
||||||
require.NoError(t, err)
|
|
||||||
|
|
||||||
require.Equal(t, response{
|
require.Equal(t, response{
|
||||||
APIKey: apiKeyData{
|
APIKey: apiKeyData{
|
||||||
ID: apiKeyInfo.ID,
|
ID: apiKeyInfo.ID,
|
||||||
Name: apiKeyInfo.Name,
|
Name: "testkey",
|
||||||
CreatedAt: apiKeyInfo.CreatedAt.UTC(),
|
CreatedAt: apiKeyInfo.CreatedAt.UTC(),
|
||||||
},
|
},
|
||||||
Project: projectData{
|
Project: projectData{
|
||||||
ID: project.ID,
|
ID: project.ID,
|
||||||
Name: project.Name,
|
Name: "testproject",
|
||||||
},
|
},
|
||||||
Owner: ownerData{
|
Owner: ownerData{
|
||||||
ID: owner.ID,
|
ID: user.ID,
|
||||||
Email: owner.Email,
|
Email: "test@email.com",
|
||||||
PaidTier: owner.PaidTier,
|
PaidTier: true,
|
||||||
},
|
},
|
||||||
}, apiResp)
|
}, apiResp)
|
||||||
})
|
})
|
||||||
|
Loading…
Reference in New Issue
Block a user