MCPcopy Create free account
hub / github.com/GetStream/stream-go2 / TestUpdateStatusBatch

Function TestUpdateStatusBatch

moderation_test.go:84–142  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

82}
83
84func TestUpdateStatusBatch(t *testing.T) {
85 ctx := context.Background()
86 client, requester := newClient(t)
87
88 batchReq := stream.UpdateStatusBatchRequest{
89 ModeratorID: "moderator_123",
90 Updates: []stream.UpdateStatusBatchItem{
91 {
92 EntityType: "stream:feeds:v2:activity",
93 EntityID: "activity_1",
94 Status: "complete",
95 RecommendedAction: "watch",
96 LatestModeratorAction: "mark_safe",
97 },
98 {
99 EntityType: "stream:feeds:v2:reaction",
100 EntityID: "reaction_1",
101 Status: "complete",
102 RecommendedAction: "flag",
103 LatestModeratorAction: "mark_harmful",
104 },
105 },
106 }
107
108 // Mock the response
109 requester.resp = `{
110 "results": [
111 {
112 "entity_id": "activity_1",
113 "entity_type": "stream:feeds:v2:activity",
114 "success": true
115 },
116 {
117 "entity_id": "reaction_1",
118 "entity_type": "stream:feeds:v2:reaction",
119 "success": true
120 }
121 ]
122 }`
123
124 resp, err := client.Moderation().UpdateStatusBatch(ctx, batchReq)
125 require.NoError(t, err)
126 require.NotNil(t, resp)
127 require.Len(t, resp.Results, 2)
128 require.Equal(t, "activity_1", resp.Results[0].EntityID)
129 require.Equal(t, "stream:feeds:v2:activity", resp.Results[0].EntityType)
130 require.True(t, resp.Results[0].Success)
131 require.Equal(t, "reaction_1", resp.Results[1].EntityID)
132 require.Equal(t, "stream:feeds:v2:reaction", resp.Results[1].EntityType)
133 require.True(t, resp.Results[1].Success)
134
135 testRequest(
136 t,
137 requester.req,
138 http.MethodPost,
139 "https://api.stream-io-api.com/api/v1.0/moderation/status/batch/?api_key=key",
140 `{"moderator_id":"moderator_123","updates":[{"entity_type":"stream:feeds:v2:activity","entity_id":"activity_1","status":"complete","recommended_action":"watch","latest_moderator_action":"mark_safe"},{"entity_type":"stream:feeds:v2:reaction","entity_id":"reaction_1","status":"complete","recommended_action":"flag","latest_moderator_action":"mark_harmful"}]}`,
141 )

Callers

nothing calls this directly

Calls 4

newClientFunction · 0.85
testRequestFunction · 0.85
UpdateStatusBatchMethod · 0.80
ModerationMethod · 0.80

Tested by

no test coverage detected