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"`
}
// Check products images uploading status
func (c Products) CheckImageUploadingStatus(ctx context.Context, params *CheckImageUploadingStatusParams) (*ProductInfoResponse, error) {
url := "/v1/product/pictures/info"
type CheckImageUploadingStatusResponse struct {
core.CommonResponse
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)
if err != nil {

View File

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