Tests[SendToNewChannel]

This commit is contained in:
2022-12-14 14:30:34 +01:00
parent 66ecad27a7
commit f1e87170f0
3 changed files with 83 additions and 3 deletions

View File

@@ -1013,10 +1013,82 @@ func TestSendCompat(t *testing.T) {
}
func TestSendToNewChannel(t *testing.T) {
ws, stop := tt.StartSimpleWebserver(t)
defer stop()
baseUrl := "http://127.0.0.1:" + ws.Port
r0 := tt.RequestPost[gin.H](t, baseUrl, "/api/users", gin.H{
"agent_model": "DUMMY_PHONE",
"agent_version": "4X",
"client_type": "ANDROID",
"fcm_token": "DUMMY_FCM",
})
uid := int(r0["user_id"].(float64))
sendtok := r0["send_key"].(string)
admintok := r0["admin_key"].(string)
type chanlist struct {
Channels []gin.H `json:"channels"`
}
{
chan0 := tt.RequestAuthGet[chanlist](t, baseUrl, admintok, fmt.Sprintf("/api/user/%d/channels", uid))
tt.AssertEqual(t, "chan-count", 1, len(chan0.Channels))
}
tt.RequestPost[gin.H](t, baseUrl, "/", gin.H{
"user_key": sendtok,
"user_id": uid,
"title": "M1",
"content": tt.Lipsum0(4),
"channel": "main",
})
{
clist := tt.RequestAuthGet[chanlist](t, baseUrl, admintok, fmt.Sprintf("/api/user/%d/channels", uid))
tt.AssertEqual(t, "chan.len", 1, len(clist.Channels))
tt.AssertEqual(t, "chan.name", "main", clist.Channels[0]["name"])
}
tt.RequestPost[gin.H](t, baseUrl, "/", gin.H{
"user_key": sendtok,
"user_id": uid,
"title": "M2",
"content": tt.Lipsum0(4),
"channel": "test",
})
{
clist := tt.RequestAuthGet[chanlist](t, baseUrl, admintok, fmt.Sprintf("/api/user/%d/channels", uid))
tt.AssertEqual(t, "chan-count", 2, len(clist.Channels))
tt.AssertArrAny(t, "chan.has('main')", clist.Channels, func(msg gin.H) bool { return msg["name"].(string) == "main" })
tt.AssertArrAny(t, "chan.has('test')", clist.Channels, func(msg gin.H) bool { return msg["name"].(string) == "test" })
}
tt.RequestPost[gin.H](t, baseUrl, "/", gin.H{
"user_key": sendtok,
"user_id": uid,
"title": "M3",
"channel": "test",
})
{
clist := tt.RequestAuthGet[chanlist](t, baseUrl, admintok, fmt.Sprintf("/api/user/%d/channels", uid))
tt.AssertEqual(t, "chan-count", 2, len(clist.Channels))
tt.AssertArrAny(t, "chan.has('main')", clist.Channels, func(msg gin.H) bool { return msg["name"].(string) == "main" })
tt.AssertArrAny(t, "chan.has('test')", clist.Channels, func(msg gin.H) bool { return msg["name"].(string) == "test" })
}
}
//TODO post to channel
//TODO post to newly-created-channel
//TODO post to existing-channel
//TODO post to foreign channel via send-key
//TODO quota exceed (+ quota counter)