Skip to content

Commit

Permalink
Update December 11, 2024 (#128)
Browse files Browse the repository at this point in the history
  • Loading branch information
diPhantxm authored Jan 10, 2025
1 parent 8173450 commit 7f705a4
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 18 deletions.
30 changes: 27 additions & 3 deletions ozon/products.go
Original file line number Diff line number Diff line change
Expand Up @@ -1321,11 +1321,35 @@ type CheckImageUploadingStatusParams struct {
ProductId []int64 `json:"product_id"`
}

type CheckImageUploadingStatusResponse struct {
core.CommonResponse

// 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) (*ProductInfoResponse, error) {
url := "/v1/product/pictures/info"
func (c Products) CheckImageUploadingStatus(ctx context.Context, params *CheckImageUploadingStatusParams) (*CheckImageUploadingStatusResponse, error) {
url := "/v2/product/pictures/info"

resp := &ProductInfoResponse{}
resp := &CheckImageUploadingStatusResponse{}

response, err := c.client.Request(ctx, http.MethodPost, url, params, resp, nil)
if err != nil {
Expand Down
35 changes: 20 additions & 15 deletions ozon/products_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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")
}
}
Expand Down

0 comments on commit 7f705a4

Please sign in to comment.