Implement POST /users/status/ids for apiv4 (#5894)
Этот коммит содержится в:
коммит произвёл
Corey Hulen
родитель
ee3b983a63
Коммит
29e6db5713
@@ -4,6 +4,7 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
@@ -29,3 +30,44 @@ func TestStatus(t *testing.T) {
|
||||
t.Fatal("Manual should have matched")
|
||||
}
|
||||
}
|
||||
|
||||
func TestStatusListToJson(t *testing.T) {
|
||||
statuses := []*Status{{NewId(), STATUS_ONLINE, true, 0, ""}, {NewId(), STATUS_OFFLINE, true, 0, ""}}
|
||||
jsonStatuses := StatusListToJson(statuses)
|
||||
|
||||
var dat []map[string]interface{}
|
||||
if err := json.Unmarshal([]byte(jsonStatuses), &dat); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
if len(dat) != 2 {
|
||||
t.Fatal("Status array should contain 2 elements")
|
||||
}
|
||||
if statuses[0].UserId != dat[0]["user_id"] {
|
||||
t.Fatal("UserId should be equal")
|
||||
}
|
||||
if statuses[1].UserId != dat[1]["user_id"] {
|
||||
t.Fatal("UserId should be equal")
|
||||
}
|
||||
}
|
||||
|
||||
func TestStatusListFromJson(t *testing.T) {
|
||||
const jsonStream = `
|
||||
[{"user_id":"k39fowpzhfffjxeaw8ecyrygme","status":"online","manual":true,"last_activity_at":0},{"user_id":"e9f1bbg8wfno7b3k7yk79bbwfy","status":"offline","manual":true,"last_activity_at":0}]
|
||||
`
|
||||
var dat []map[string]interface{}
|
||||
if err := json.Unmarshal([]byte(jsonStream), &dat); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
toDec := strings.NewReader(jsonStream)
|
||||
var statusesFromJson []*Status
|
||||
statusesFromJson = StatusListFromJson(toDec)
|
||||
|
||||
if statusesFromJson[0].UserId != dat[0]["user_id"] {
|
||||
t.Fatal("UserId should be equal")
|
||||
}
|
||||
if statusesFromJson[1].UserId != dat[1]["user_id"] {
|
||||
t.Fatal("UserId should be equal")
|
||||
}
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user