Skip to content

Commit 9032bb7

Browse files
authored
Merge pull request #107 from Neur0toxine/fix-custom-fields-type-filter
fix type filter for custom fields
2 parents 98c4228 + c88836e commit 9032bb7

File tree

2 files changed

+20
-9
lines changed

2 files changed

+20
-9
lines changed

client_test.go

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7398,10 +7398,21 @@ func TestClient_CustomFields(t *testing.T) {
73987398

73997399
gock.New(crmURL).
74007400
Get("/custom-fields").
7401+
AddMatcher(func(r *http.Request, _ *gock.Request) (bool, error) {
7402+
typeValues, ok := r.URL.Query()["filter[type][]"]
7403+
if !ok || len(typeValues) != 2 {
7404+
return false, nil
7405+
}
7406+
return typeValues[0] == "string" && typeValues[1] == "text", nil
7407+
}).
74017408
Reply(200).
74027409
BodyString(`{"success": true}`)
74037410

7404-
data, status, err := c.CustomFields(CustomFieldsRequest{})
7411+
data, status, err := c.CustomFields(CustomFieldsRequest{
7412+
Filter: CustomFieldsFilter{
7413+
Type: []string{"string", "text"},
7414+
},
7415+
})
74057416

74067417
if err != nil {
74077418
t.Errorf("%v", err)
@@ -7423,11 +7434,11 @@ func TestClient_CustomFields_Fail(t *testing.T) {
74237434

74247435
gock.New(crmURL).
74257436
Get("/custom-fields").
7426-
MatchParam("filter[type]", codeFail).
7437+
MatchParam("filter[type][]", codeFail).
74277438
Reply(400).
74287439
BodyString(`{"success": false, "errorMsg": "Errors in the input parameters"}`)
74297440

7430-
data, _, err := c.CustomFields(CustomFieldsRequest{Filter: CustomFieldsFilter{Type: codeFail}})
7441+
data, _, err := c.CustomFields(CustomFieldsRequest{Filter: CustomFieldsFilter{Type: []string{codeFail}}})
74317442
if err == nil {
74327443
t.Errorf("%v", err)
74337444
}

filters.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -420,12 +420,12 @@ type FilesFilter struct {
420420

421421
// CustomFieldsFilter type.
422422
type CustomFieldsFilter struct {
423-
Name string `url:"name,omitempty"`
424-
Code string `url:"code,omitempty"`
425-
Type string `url:"type,omitempty"`
426-
Entity string `url:"entity,omitempty"`
427-
ViewMode string `url:"viewMode,omitempty"`
428-
DisplayArea string `url:"displayArea,omitempty"`
423+
Name string `url:"name,omitempty"`
424+
Code string `url:"code,omitempty"`
425+
Type []string `url:"type,omitempty,brackets"`
426+
Entity string `url:"entity,omitempty"`
427+
ViewMode string `url:"viewMode,omitempty"`
428+
DisplayArea string `url:"displayArea,omitempty"`
429429
}
430430

431431
// CustomDictionariesFilter type.

0 commit comments

Comments
 (0)