mirror of
https://github.com/retailcrm/api-client-go.git
synced 2024-11-24 22:06:03 +03:00
add documentation, bug fix
This commit is contained in:
parent
a2fdb06219
commit
ed9b0a4396
1759
v5/client.go
1759
v5/client.go
File diff suppressed because it is too large
Load Diff
@ -16,6 +16,7 @@ var user, _ = strconv.Atoi(os.Getenv("RETAILCRM_USER"))
|
|||||||
var statuses = map[int]bool{http.StatusOK: true, http.StatusCreated: true}
|
var statuses = map[int]bool{http.StatusOK: true, http.StatusCreated: true}
|
||||||
var id int
|
var id int
|
||||||
var ids []int
|
var ids []int
|
||||||
|
var codeCustomField string
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
r = rand.New(rand.NewSource(time.Now().UnixNano()))
|
r = rand.New(rand.NewSource(time.Now().UnixNano()))
|
||||||
@ -49,7 +50,6 @@ func TestGetRequest(t *testing.T) {
|
|||||||
_, status, _ := c.GetRequest("/fake-method")
|
_, status, _ := c.GetRequest("/fake-method")
|
||||||
|
|
||||||
if status != http.StatusNotFound {
|
if status != http.StatusNotFound {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -58,7 +58,6 @@ func TestPostRequest(t *testing.T) {
|
|||||||
_, status, _ := c.PostRequest("/fake-method", url.Values{})
|
_, status, _ := c.PostRequest("/fake-method", url.Values{})
|
||||||
|
|
||||||
if status != http.StatusNotFound {
|
if status != http.StatusNotFound {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -118,7 +117,6 @@ func TestClient_ApiCredentialsCredentials(t *testing.T) {
|
|||||||
|
|
||||||
data, status, err := c.APICredentials()
|
data, status, err := c.APICredentials()
|
||||||
if err.RuntimeErr != nil {
|
if err.RuntimeErr != nil {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status >= http.StatusBadRequest {
|
if status >= http.StatusBadRequest {
|
||||||
@ -1534,7 +1532,7 @@ func TestClient_PackChange(t *testing.T) {
|
|||||||
Patronymic: "Аристархович",
|
Patronymic: "Аристархович",
|
||||||
ExternalID: RandomString(8),
|
ExternalID: RandomString(8),
|
||||||
Email: fmt.Sprintf("%s@example.com", RandomString(8)),
|
Email: fmt.Sprintf("%s@example.com", RandomString(8)),
|
||||||
Items: []OrderItem{{Offer: Offer{ID: 1609}, Quantity: 5}},
|
Items: []OrderItem{{Offer: Offer{ID: 25472}, Quantity: 5}},
|
||||||
})
|
})
|
||||||
if err.RuntimeErr != nil {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.Error())
|
t.Errorf("%v", err.Error())
|
||||||
@ -1740,28 +1738,22 @@ func TestClient_IntegrationModuleFail(t *testing.T) {
|
|||||||
Code: code,
|
Code: code,
|
||||||
})
|
})
|
||||||
if err.RuntimeErr == nil {
|
if err.RuntimeErr == nil {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status < http.StatusBadRequest {
|
if status < http.StatusBadRequest {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if m.Success != false {
|
if m.Success != false {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
g, status, err := c.IntegrationModule(RandomString(12))
|
g, status, err := c.IntegrationModule(RandomString(12))
|
||||||
if err.RuntimeErr == nil {
|
if err.RuntimeErr == nil {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status < http.StatusBadRequest {
|
if status < http.StatusBadRequest {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if g.Success != false {
|
if g.Success != false {
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1863,19 +1855,16 @@ func TestClient_CostCreate(t *testing.T) {
|
|||||||
CostItem: "seo",
|
CostItem: "seo",
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
id = data.ID
|
id = data.ID
|
||||||
@ -1892,19 +1881,16 @@ func TestClient_Costs(t *testing.T) {
|
|||||||
Page: 1,
|
Page: 1,
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1913,19 +1899,16 @@ func TestClient_Cost(t *testing.T) {
|
|||||||
|
|
||||||
data, status, err := c.Cost(id)
|
data, status, err := c.Cost(id)
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1940,19 +1923,16 @@ func TestClient_CostEdit(t *testing.T) {
|
|||||||
Order: nil,
|
Order: nil,
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1961,19 +1941,16 @@ func TestClient_CostDelete(t *testing.T) {
|
|||||||
|
|
||||||
data, status, err := c.CostDelete(id)
|
data, status, err := c.CostDelete(id)
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1996,23 +1973,20 @@ func TestClient_CostsUpload(t *testing.T) {
|
|||||||
Summ: 125,
|
Summ: 125,
|
||||||
CostItem: "seo",
|
CostItem: "seo",
|
||||||
Order: nil,
|
Order: nil,
|
||||||
Sites: []string{"catalog-test"},
|
Sites: []string{"retailcrm-ru"},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ids = data.UploadedCosts
|
ids = data.UploadedCosts
|
||||||
@ -2022,19 +1996,16 @@ func TestClient_CostsDelete(t *testing.T) {
|
|||||||
c := client()
|
c := client()
|
||||||
data, status, err := c.CostsDelete(ids)
|
data, status, err := c.CostsDelete(ids)
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2043,19 +2014,16 @@ func TestClient_CustomFields(t *testing.T) {
|
|||||||
|
|
||||||
data, status, err := c.CustomFields(CustomFieldsRequest{})
|
data, status, err := c.CustomFields(CustomFieldsRequest{})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
func TestClient_CustomDictionaries(t *testing.T) {
|
func TestClient_CustomDictionaries(t *testing.T) {
|
||||||
@ -2069,19 +2037,16 @@ func TestClient_CustomDictionaries(t *testing.T) {
|
|||||||
Page: 1,
|
Page: 1,
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2090,19 +2055,16 @@ func TestClient_CustomDictionary(t *testing.T) {
|
|||||||
|
|
||||||
data, status, err := c.CustomDictionary("test2")
|
data, status, err := c.CustomDictionary("test2")
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2111,7 +2073,7 @@ func TestClient_CustomDictionariesCreate(t *testing.T) {
|
|||||||
|
|
||||||
data, status, err := c.CustomDictionariesCreate(CustomDictionary{
|
data, status, err := c.CustomDictionariesCreate(CustomDictionary{
|
||||||
Name: "test2",
|
Name: "test2",
|
||||||
Code: "test2",
|
Code: RandomString(8),
|
||||||
Elements: []Element{
|
Elements: []Element{
|
||||||
{
|
{
|
||||||
Name: "test",
|
Name: "test",
|
||||||
@ -2120,19 +2082,16 @@ func TestClient_CustomDictionariesCreate(t *testing.T) {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2150,93 +2109,80 @@ func TestClient_CustomDictionaryEdit(t *testing.T) {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestClient_CustomFieldsCreate(t *testing.T) {
|
func TestClient_CustomFieldsCreate(t *testing.T) {
|
||||||
c := client()
|
c := client()
|
||||||
|
codeCustomField = RandomString(8)
|
||||||
|
|
||||||
data, status, err := c.CustomFieldsCreate(CustomFieldsEditRequest{
|
data, status, err := c.CustomFieldsCreate(CustomFields{
|
||||||
CustomField: CustomFields{
|
Name: codeCustomField,
|
||||||
Name: "test4",
|
Code: codeCustomField,
|
||||||
Code: "test4",
|
|
||||||
Type: "text",
|
Type: "text",
|
||||||
Entity: "order",
|
Entity: "order",
|
||||||
DisplayArea: "customer",
|
DisplayArea: "customer",
|
||||||
},
|
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestClient_CustomField(t *testing.T) {
|
func TestClient_CustomField(t *testing.T) {
|
||||||
c := client()
|
c := client()
|
||||||
|
|
||||||
data, status, err := c.CustomField("customer", "testtest")
|
data, status, err := c.CustomField("order", codeCustomField)
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestClient_CustomFieldEdit(t *testing.T) {
|
func TestClient_CustomFieldEdit(t *testing.T) {
|
||||||
c := client()
|
c := client()
|
||||||
|
|
||||||
data, status, err := c.CustomFieldEdit("customer", CustomFieldsEditRequest{
|
data, status, err := c.CustomFieldEdit(CustomFields{
|
||||||
CustomField: CustomFields{
|
Code: codeCustomField,
|
||||||
Name: "testtesttest",
|
Entity: "order",
|
||||||
},
|
DisplayArea: "delivery",
|
||||||
})
|
})
|
||||||
|
|
||||||
if err.ErrorMsg != "" {
|
if err.RuntimeErr != nil {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.Error())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != http.StatusOK {
|
if !statuses[status] {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.Success != true {
|
if data.Success != true {
|
||||||
t.Errorf("%v", err.ErrorMsg)
|
t.Errorf("%v", err.ApiError())
|
||||||
t.Fail()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -88,7 +88,7 @@ type TasksRequest struct {
|
|||||||
|
|
||||||
// NotesRequest type
|
// NotesRequest type
|
||||||
type NotesRequest struct {
|
type NotesRequest struct {
|
||||||
Filter TasksFilter `url:"filter,omitempty"`
|
Filter NotesFilter `url:"filter,omitempty"`
|
||||||
Limit int `url:"limit,omitempty"`
|
Limit int `url:"limit,omitempty"`
|
||||||
Page int `url:"page,omitempty"`
|
Page int `url:"page,omitempty"`
|
||||||
}
|
}
|
||||||
@ -164,8 +164,3 @@ type CustomDictionariesRequest struct {
|
|||||||
Page int `url:"page,omitempty"`
|
Page int `url:"page,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// CustomFieldsEditRequest type
|
|
||||||
type CustomFieldsEditRequest struct {
|
|
||||||
CustomField CustomFields `url:"customField,omitempty"`
|
|
||||||
Entity string `url:"entity,omitempty"`
|
|
||||||
}
|
|
||||||
|
Loading…
Reference in New Issue
Block a user