106 lines
2.7 KiB
Go
106 lines
2.7 KiB
Go
package test
|
|
|
|
import (
|
|
tt "blackforestbytes.com/simplecloudnotifier/test/util"
|
|
"fmt"
|
|
"github.com/gin-gonic/gin"
|
|
"strconv"
|
|
"testing"
|
|
)
|
|
|
|
func TestListSenderNames(t *testing.T) {
|
|
ws, baseUrl, stop := tt.StartSimpleWebserver(t)
|
|
defer stop()
|
|
|
|
data := tt.InitDefaultData(t, ws)
|
|
|
|
type sn struct {
|
|
SenderName string `json:"name"`
|
|
LastTimestamp string `json:"last_timestamp"`
|
|
FirstTimestamp string `json:"first_timestamp"`
|
|
Count int `json:"count"`
|
|
}
|
|
type snlistS struct {
|
|
SNList []sn `json:"sender_names"`
|
|
}
|
|
type snlistH struct {
|
|
SNList []gin.H `json:"sender_names"`
|
|
}
|
|
|
|
responses := []struct {
|
|
Idx int
|
|
Resp []string
|
|
}{
|
|
{0, []string{"Pocket Pal", "Cellular Confidant", "Mobile Mate"}},
|
|
{1, []string{}},
|
|
{2, []string{}},
|
|
{3, []string{}},
|
|
{4, []string{"Server0"}},
|
|
{5, []string{"example.org", "example.com", "localhost"}},
|
|
{6, []string{"server1", "server2"}},
|
|
{7, []string{"localhost"}},
|
|
{8, []string{}},
|
|
{9, []string{"Vincent", "Tim", "Max"}},
|
|
{10, []string{}},
|
|
{11, []string{"192.168.0.1", "#S0", "localhost"}},
|
|
{12, []string{}},
|
|
{13, []string{}},
|
|
{14, []string{"dummy-man"}},
|
|
{15, []string{"dummy-man"}},
|
|
{16, []string{}},
|
|
}
|
|
|
|
for _, resp := range responses {
|
|
msgList := tt.RequestAuthGet[snlistH](t, data.User[resp.Idx].AdminKey, baseUrl, "/api/v2/sender-names")
|
|
tt.AssertMappedArr(t, "sender_names_"+strconv.Itoa(resp.Idx), resp.Resp, msgList.SNList, "name")
|
|
}
|
|
}
|
|
|
|
func TestListUserSenderNames(t *testing.T) {
|
|
ws, baseUrl, stop := tt.StartSimpleWebserver(t)
|
|
defer stop()
|
|
|
|
data := tt.InitDefaultData(t, ws)
|
|
|
|
type sn struct {
|
|
SenderName string `json:"name"`
|
|
LastTimestamp string `json:"last_timestamp"`
|
|
FirstTimestamp string `json:"first_timestamp"`
|
|
Count int `json:"count"`
|
|
}
|
|
type snlistS struct {
|
|
SNList []sn `json:"sender_names"`
|
|
}
|
|
type snlistH struct {
|
|
SNList []gin.H `json:"sender_names"`
|
|
}
|
|
|
|
responses := []struct {
|
|
Idx int
|
|
Resp []string
|
|
}{
|
|
{0, []string{"Pocket Pal", "Cellular Confidant", "Mobile Mate"}},
|
|
{1, []string{}},
|
|
{2, []string{}},
|
|
{3, []string{}},
|
|
{4, []string{"Server0"}},
|
|
{5, []string{"example.org", "example.com", "localhost"}},
|
|
{6, []string{"server1", "server2"}},
|
|
{7, []string{"localhost"}},
|
|
{8, []string{}},
|
|
{9, []string{"Vincent", "Tim", "Max"}},
|
|
{10, []string{}},
|
|
{11, []string{"192.168.0.1", "#S0", "localhost"}},
|
|
{12, []string{}},
|
|
{13, []string{}},
|
|
{14, []string{}},
|
|
{15, []string{"dummy-man"}},
|
|
{16, []string{}},
|
|
}
|
|
|
|
for _, resp := range responses {
|
|
msgList := tt.RequestAuthGet[snlistH](t, data.User[resp.Idx].AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/sender-names", data.User[resp.Idx].UID))
|
|
tt.AssertMappedArr(t, "sender_names_"+strconv.Itoa(resp.Idx), resp.Resp, msgList.SNList, "name")
|
|
}
|
|
}
|