From 52993189e11dc96ebf7b7fb9cef8ad29cce4bd40 Mon Sep 17 00:00:00 2001 From: Krystian Jarmicki Date: Wed, 20 Aug 2025 12:56:44 +0200 Subject: [PATCH] Add support for `Fields` in `AutoVideoDetails` upload parameter --- api/api.go | 4 +++- api/uploader/upload_acceptance_test.go | 21 +++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/api/api.go b/api/api.go index 58c223c..28bc9a4 100644 --- a/api/api.go +++ b/api/api.go @@ -186,7 +186,9 @@ func (at AutoTranscription) MarshalJSON() ([]byte, error) { } // AutoVideoDetails represents the auto video details param. -type AutoVideoDetails struct{} +type AutoVideoDetails struct { + Fields []string `json:"fields,omitempty"` +} // BriefAssetResult represents a partial asset result that is returned when assets are listed. type BriefAssetResult struct { diff --git a/api/uploader/upload_acceptance_test.go b/api/uploader/upload_acceptance_test.go index bce9f86..38a6de2 100644 --- a/api/uploader/upload_acceptance_test.go +++ b/api/uploader/upload_acceptance_test.go @@ -160,6 +160,10 @@ func getAutoVideoDetailsTestCases() []UploadAPIAcceptanceTestCase { "&file=data%3Aimage%2Fgif%3Bbase64%2CR0lGODlhAQABAIAAAAAAAP%2F%2F%2FyH5BAEAAAAALAAAAAABAAEAAAIBRAA7" + "×tamp=123456789" + "&unsigned=true" + bodyFields := "auto_video_details=%7B%22fields%22%3A%5B%22title%22%2C%22description%22%5D%7D" + + "&file=data%3Aimage%2Fgif%3Bbase64%2CR0lGODlhAQABAIAAAAAAAP%2F%2F%2FyH5BAEAAAAALAAAAAABAAEAAAIBRAA7" + + "×tamp=123456789" + + "&unsigned=true" return []UploadAPIAcceptanceTestCase{ { @@ -179,6 +183,23 @@ func getAutoVideoDetailsTestCases() []UploadAPIAcceptanceTestCase { }, ExpectedCallCount: 1, }, + { + Name: "Upload Test Auto Video Details With Fields", + RequestTest: func(uploadAPI *uploader.API, ctx context.Context) (interface{}, error) { + return uploadAPI.Upload(ctx, cldtest.Base64Image, uploader.UploadParams{ + AutoVideoDetails: &api.AutoVideoDetails{ + Fields: []string{"title", "description"}, + }, + }) + }, + ResponseTest: func(response interface{}, t *testing.T) {}, + ExpectedRequest: cldtest.ExpectedRequestParams{ + Method: "POST", + URI: "/auto/upload", + Body: &bodyFields, + }, + ExpectedCallCount: 1, + }, } }