|
|
|
|
|
|
|
|
|
|
|
package main |
|
|
|
|
|
|
|
|
|
|
|
import "testing" |
|
|
|
|
|
import "encoding/json" |
|
|
|
|
|
|
|
|
|
|
|
func TestDecodeMeetingJson(t *testing.T) { |
|
|
|
|
|
msg := ` |
|
|
|
|
|
{ |
|
|
|
|
|
"id": "595d064a6e372fc1f", |
|
|
|
|
|
"name": "testmeting.", |
|
|
|
|
|
"deleted": false, |
|
|
|
|
|
"status": "Planned", |
|
|
|
|
|
"dateStart": "2017-07-05 15:30:00", |
|
|
|
|
|
"dateEnd": "2017-07-05 19:13:00", |
|
|
|
|
|
"duration": 13380, |
|
|
|
|
|
"reminders": [ |
|
|
|
|
|
{ |
|
|
|
|
|
"seconds": 0, |
|
|
|
|
|
"type": "Popup" |
|
|
|
|
|
}, |
|
|
|
|
|
{ |
|
|
|
|
|
"seconds": 18000, |
|
|
|
|
|
"type": "Email" |
|
|
|
|
|
} |
|
|
|
|
|
], |
|
|
|
|
|
"description": "ddaadd", |
|
|
|
|
|
"createdAt": "2017-07-05 15:31:22", |
|
|
|
|
|
"modifiedAt": "2017-07-15 07:49:48", |
|
|
|
|
|
"googleCalendarEventId": null, |
|
|
|
|
|
"venue": "venue111", |
|
|
|
|
|
"parentId": "5961bfac40e1b4e69", |
|
|
|
|
|
"parentType": "Lead", |
|
|
|
|
|
"parentName": "Anonymous User 127.0.0.1:49261", |
|
|
|
|
|
"accountId": "aid", |
|
|
|
|
|
"accountName": "aname", |
|
|
|
|
|
"usersIds": [ |
|
|
|
|
|
"1" |
|
|
|
|
|
], |
|
|
|
|
|
"usersNames": { |
|
|
|
|
|
"1": "Admin" |
|
|
|
|
|
}, |
|
|
|
|
|
"usersColumns": { |
|
|
|
|
|
"1": { |
|
|
|
|
|
"status": "Accepted" |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
"contactsIds": [ |
|
|
|
|
|
"595a292e87b0aa3a1" |
|
|
|
|
|
], |
|
|
|
|
|
"contactsNames": { |
|
|
|
|
|
"595a292e87b0aa3a1": "test name" |
|
|
|
|
|
}, |
|
|
|
|
|
"contactsColumns": { |
|
|
|
|
|
"595a292e87b0aa3a1": { |
|
|
|
|
|
"status": "None" |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
"leadsIds": [ |
|
|
|
|
|
"595a921c5032dbfa8", |
|
|
|
|
|
"595a920924289575a", |
|
|
|
|
|
"595a91074492662d9", |
|
|
|
|
|
"595a9105b0d8630ab", |
|
|
|
|
|
"595a91043fc61b85b", |
|
|
|
|
|
"595a9102dab66349c" |
|
|
|
|
|
], |
|
|
|
|
|
"leadsNames": { |
|
|
|
|
|
"595a921c5032dbfa8": " \u9b54\u9053\u5b50", |
|
|
|
|
|
"595a920924289575a": " HIT", |
|
|
|
|
|
"595a91074492662d9": " yang", |
|
|
|
|
|
"595a9105b0d8630ab": " \u5b59\u8fd0\u5377\u5b50", |
|
|
|
|
|
"595a91043fc61b85b": " Iphy", |
|
|
|
|
|
"595a9102dab66349c": " \u6668\u516e" |
|
|
|
|
|
}, |
|
|
|
|
|
"leadsColumns": { |
|
|
|
|
|
"595a921c5032dbfa8": { |
|
|
|
|
|
"status": "None1" |
|
|
|
|
|
}, |
|
|
|
|
|
"595a920924289575a": { |
|
|
|
|
|
"status": "None2" |
|
|
|
|
|
}, |
|
|
|
|
|
"595a91074492662d9": { |
|
|
|
|
|
"status": "None3" |
|
|
|
|
|
}, |
|
|
|
|
|
"595a9105b0d8630ab": { |
|
|
|
|
|
"status": "None4" |
|
|
|
|
|
}, |
|
|
|
|
|
"595a91043fc61b85b": { |
|
|
|
|
|
"status": "None5" |
|
|
|
|
|
}, |
|
|
|
|
|
"595a9102dab66349c": { |
|
|
|
|
|
"status": "None6" |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
"createdById": "1", |
|
|
|
|
|
"createdByName": "Admin", |
|
|
|
|
|
"modifiedById": "1", |
|
|
|
|
|
"modifiedByName": "Admin", |
|
|
|
|
|
"assignedUserId": "1", |
|
|
|
|
|
"assignedUserName": "Admin", |
|
|
|
|
|
"teamsIds": [ |
|
|
|
|
|
"5958913a2479166db", |
|
|
|
|
|
"59589145af954bc38" |
|
|
|
|
|
], |
|
|
|
|
|
"teamsNames": { |
|
|
|
|
|
"5958913a2479166db": "testteam1", |
|
|
|
|
|
"59589145af954bc38": "testteam2" |
|
|
|
|
|
}, |
|
|
|
|
|
"googleCalendarId": null, |
|
|
|
|
|
"googleCalendarName": null, |
|
|
|
|
|
"coverId": "coverid", |
|
|
|
|
|
"coverName": "covername" |
|
|
|
|
|
} |
|
|
|
|
|
` |
|
|
|
|
|
|
|
|
|
|
|
e := crmdMeeting{} |
|
|
|
|
|
err := json.Unmarshal([]byte(msg), &e) |
|
|
|
|
|
|
|
|
|
|
|
AssertEqual(t, err, nil, "decode json should be correct") |
|
|
|
|
|
AssertEqual(t, e.ID, "595d064a6e372fc1f", "ID mismatch") |
|
|
|
|
|
AssertEqual(t, e.Name, "testmeting.", "name mismatch") |
|
|
|
|
|
AssertEqual(t, e.Deleted, false, "deleted should be false") |
|
|
|
|
|
AssertEqual(t, e.DateStart, "2017-07-05 15:30:00", "dataStart wrong") |
|
|
|
|
|
AssertEqual(t, e.DateEnd, "2017-07-05 19:13:00", "dateEnd wrong") |
|
|
|
|
|
AssertEqual(t, e.Duration, 13380, "duration should be 13380") |
|
|
|
|
|
AssertEqual(t, e.Reminders[0].Seconds, 0, "reminder[0] seconds expect 0") |
|
|
|
|
|
AssertEqual(t, e.Reminders[0].Type, "Popup", "reminder[0] type expect popup") |
|
|
|
|
|
AssertEqual(t, e.Reminders[1].Seconds, 18000, "reminder[1] seconds expect 18000") |
|
|
|
|
|
AssertEqual(t, e.Reminders[1].Type, "Email", "reminder[1] type expect email") |
|
|
|
|
|
AssertEqual(t, e.Description, "ddaadd", "description not right") |
|
|
|
|
|
AssertEqual(t, e.CreatedAt, "2017-07-05 15:31:22", "createdAt wrong") |
|
|
|
|
|
AssertEqual(t, e.ModifiedAt, "2017-07-15 07:49:48", "modifiedAt wrong") |
|
|
|
|
|
AssertEqual(t, e.Venue, "venue111", "venu should be correct") |
|
|
|
|
|
AssertEqual(t, e.ParentID, "5961bfac40e1b4e69", "parentID mismatch") |
|
|
|
|
|
AssertEqual(t, e.ParentName, "Anonymous User 127.0.0.1:49261", "parentName mismatch") |
|
|
|
|
|
AssertEqual(t, e.ParentType, "Lead", "parent type should be Lead") |
|
|
|
|
|
AssertEqual(t, e.AccountID, "aid", "accountid should be aid") |
|
|
|
|
|
AssertEqual(t, e.AccountName, "aname", "accountName should be aname") |
|
|
|
|
|
AssertEqual(t, e.UsersIds[0], "1", "usersIDs[0] should be 1") |
|
|
|
|
|
AssertEqual(t, e.UsersNames["1"], "Admin", "usersNames[1]!=Admin") |
|
|
|
|
|
AssertEqual(t, e.UsersColumns["1"].Status, "Accepted", "status should be accepted") |
|
|
|
|
|
AssertEqual(t, e.ContactsIds[0], "595a292e87b0aa3a1", "contactsids[0] wrong") |
|
|
|
|
|
AssertEqual(t, e.ContactsNames["595a292e87b0aa3a1"], "test name", "contact name wrong") |
|
|
|
|
|
AssertEqual(t, e.ContactsColumns["595a292e87b0aa3a1"].Status, "None", "contact status should be none") |
|
|
|
|
|
|
|
|
|
|
|
AssertEqual(t, e.LeadsIds[0], "595a921c5032dbfa8", "leadsIDs[0] wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsIds[1], "595a920924289575a", "leadsIDs[1] wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsIds[2], "595a91074492662d9", "leadsIDs[2] wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsIds[3], "595a9105b0d8630ab", "leadsIDs[3] wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsIds[4], "595a91043fc61b85b", "leadsIDs[4] wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsIds[5], "595a9102dab66349c", "leadsIDs[5] wrong") |
|
|
|
|
|
|
|
|
|
|
|
AssertEqual(t, e.LeadsNames["595a921c5032dbfa8"], " \u9b54\u9053\u5b50", "leads[0] name wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsNames["595a920924289575a"], " HIT", "leads[1] name wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsNames["595a91074492662d9"], " yang", "leads[2] name wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsNames["595a9105b0d8630ab"], " \u5b59\u8fd0\u5377\u5b50", "leads[3] name wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsNames["595a91043fc61b85b"], " Iphy", "leads[4] name wrong") |
|
|
|
|
|
AssertEqual(t, e.LeadsNames["595a9102dab66349c"], " \u6668\u516e", "leads[5] name wrong") |
|
|
|
|
|
|
|
|
|
|
|
AssertEqual(t, e.LeadsColumns["595a921c5032dbfa8"].Status, "None1", "") |
|
|
|
|
|
AssertEqual(t, e.LeadsColumns["595a920924289575a"].Status, "None2", "") |
|
|
|
|
|
AssertEqual(t, e.LeadsColumns["595a91074492662d9"].Status, "None3", "") |
|
|
|
|
|
AssertEqual(t, e.LeadsColumns["595a9105b0d8630ab"].Status, "None4", "") |
|
|
|
|
|
AssertEqual(t, e.LeadsColumns["595a91043fc61b85b"].Status, "None5", "") |
|
|
|
|
|
AssertEqual(t, e.LeadsColumns["595a9102dab66349c"].Status, "None6", "") |
|
|
|
|
|
|
|
|
|
|
|
AssertEqual(t, e.CreatedByID, "1", "createdBy id wrong ") |
|
|
|
|
|
AssertEqual(t, e.CreatedByName, "Admin", "createdByName") |
|
|
|
|
|
AssertEqual(t, e.ModifiedByID, "1", "modified id !=1") |
|
|
|
|
|
AssertEqual(t, e.ModifiedByName, "Admin", "modifiedByName wrong") |
|
|
|
|
|
AssertEqual(t, e.AssignedUserID, "1", "assigned userid != 1") |
|
|
|
|
|
AssertEqual(t, e.AssignedUserName, "Admin", "assigned name != Admin") |
|
|
|
|
|
AssertEqual(t, e.TeamsIDs[0], "5958913a2479166db", "team[0] wrong") |
|
|
|
|
|
AssertEqual(t, e.TeamsIDs[1], "59589145af954bc38", "team[1] wrong") |
|
|
|
|
|
AssertEqual(t, e.TeamsNames["5958913a2479166db"], "testteam1", "") |
|
|
|
|
|
AssertEqual(t, e.TeamsNames["59589145af954bc38"], "testteam2", "") |
|
|
|
|
|
AssertEqual(t, e.CoverID, "coverid", "") |
|
|
|
|
|
AssertEqual(t, e.CoverName, "covername", "") |
|
|
|
|
|
|
|
|
|
|
|
} |