Update December 11, 2024 (#128)

This commit is contained in:
Kirill
2025-01-10 20:51:55 +03:00
committed by GitHub
parent 8173450413
commit 7f705a4eb5
2 changed files with 48 additions and 19 deletions

View File

@@ -1321,11 +1321,35 @@ type CheckImageUploadingStatusParams struct {
ProductId []int64 `json:"product_id"` ProductId []int64 `json:"product_id"`
} }
// Check products images uploading status type CheckImageUploadingStatusResponse struct {
func (c Products) CheckImageUploadingStatus(ctx context.Context, params *CheckImageUploadingStatusParams) (*ProductInfoResponse, error) { core.CommonResponse
url := "/v1/product/pictures/info"
resp := &ProductInfoResponse{} // Product images
Items []CheckImageUploadingStatusItem `json:"items"`
}
type CheckImageUploadingStatusItem struct {
// Product identifier
ProductId int64 `json:"product_id"`
// Main image link
PrimaryPhoto []string `json:"primary_photo"`
// Links to product photos
Photo []string `json:"photo"`
// Links to uploaded color samples
ColorPhoto []string `json:"color_photo"`
// 360 images links
Photo360 []string `json:"photo_360"`
}
// Check products images uploading status
func (c Products) CheckImageUploadingStatus(ctx context.Context, params *CheckImageUploadingStatusParams) (*CheckImageUploadingStatusResponse, error) {
url := "/v2/product/pictures/info"
resp := &CheckImageUploadingStatusResponse{}
response, err := c.client.Request(ctx, http.MethodPost, url, params, resp, nil) response, err := c.client.Request(ctx, http.MethodPost, url, params, resp, nil)
if err != nil { if err != nil {

View File

@@ -1290,18 +1290,23 @@ func TestCheckImageUploadingStatus(t *testing.T) {
ProductId: []int64{123456}, ProductId: []int64{123456},
}, },
`{ `{
"result": { "items": [
"pictures": [ {
{ "product_id": 123456,
"is_360": true, "primary_photo": [
"is_color": true, "string"
"is_primary": true, ],
"product_id": 123456, "photo": [
"state": "string", "string"
"url": "string" ],
} "color_photo": [
] "string"
} ],
"photo_360": [
"string"
]
}
]
}`, }`,
}, },
// Test No Client-Id or Api-Key // Test No Client-Id or Api-Key
@@ -1326,15 +1331,15 @@ func TestCheckImageUploadingStatus(t *testing.T) {
continue continue
} }
compareJsonResponse(t, test.response, &ProductInfoResponse{}) compareJsonResponse(t, test.response, &CheckImageUploadingStatusResponse{})
if resp.StatusCode != test.statusCode { if resp.StatusCode != test.statusCode {
t.Errorf("got wrong status code: got: %d, expected: %d", resp.StatusCode, test.statusCode) t.Errorf("got wrong status code: got: %d, expected: %d", resp.StatusCode, test.statusCode)
} }
if resp.StatusCode == http.StatusOK { if resp.StatusCode == http.StatusOK {
if len(resp.Result.Pictures) > 0 { if len(resp.Items) > 0 {
if resp.Result.Pictures[0].ProductId != test.params.ProductId[0] { if resp.Items[0].ProductId != test.params.ProductId[0] {
t.Errorf("Product ids in request and response are not equal") t.Errorf("Product ids in request and response are not equal")
} }
} }