feat: add trusted customer service friendships
Deploy im-server production / deploy (push) Successful in 11m38s
Deploy im-server production / deploy (push) Successful in 11m38s
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"strings"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@@ -37,6 +38,35 @@ func (internalAdminQueryNotFound) QueryOne(types.TenantID, string, []any) (map[s
|
||||
return nil, types.ErrNotFound
|
||||
}
|
||||
|
||||
func TestServeInternalFriendDirectAddCreatesRelationshipWithoutRequest(t *testing.T) {
|
||||
oldRelations := store.Relations
|
||||
relations := &testRelationsStore{}
|
||||
store.Relations = relations
|
||||
t.Cleanup(func() { store.Relations = oldRelations })
|
||||
|
||||
req := httptest.NewRequest(http.MethodPost, "/internal/admin-query/tenants/default/friends/direct", strings.NewReader(`{"user_id":"usrAQAAAAAAAAA","peer_user_id":"usrAgAAAAAAAAA"}`))
|
||||
wrt := httptest.NewRecorder()
|
||||
serveInternalFriendDirectAdd(wrt, req, types.TenantID(1))
|
||||
|
||||
if wrt.Code != http.StatusOK {
|
||||
t.Fatalf("status: got %d, want %d; body=%s", wrt.Code, http.StatusOK, wrt.Body.String())
|
||||
}
|
||||
if !relations.directAdded || relations.created != nil {
|
||||
t.Fatalf("direct_added=%v friend_request=%v, want direct add and no request", relations.directAdded, relations.created)
|
||||
}
|
||||
var payload struct {
|
||||
Data struct {
|
||||
Relationship string `json:"relationship"`
|
||||
} `json:"data"`
|
||||
}
|
||||
if err := json.Unmarshal(wrt.Body.Bytes(), &payload); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if payload.Data.Relationship != types.RelationshipFriend {
|
||||
t.Fatalf("relationship = %q, want %q", payload.Data.Relationship, types.RelationshipFriend)
|
||||
}
|
||||
}
|
||||
|
||||
func TestServeInternalUserQueryMissingUserReturnsNotFound(t *testing.T) {
|
||||
ctrl := gomock.NewController(t)
|
||||
defer ctrl.Finish()
|
||||
|
||||
Reference in New Issue
Block a user