Skip to content

Commit cdd3569

Browse files
authored
[MOD-534]: add moderationTemplate field to reaction update (#164)
* add moderationTemplate field to reaction update * update interface
1 parent 516fc3d commit cdd3569

File tree

3 files changed

+28
-3
lines changed

3 files changed

+28
-3
lines changed

src/IReactions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,6 @@ public interface IReactions
5959

6060
/// <summary>Updates a reaction.</summary>
6161
/// <remarks>https://getstream.io/activity-feeds/docs/dotnet-csharp/reactions_introduction/?language=csharp</remarks>
62-
Task<Reaction> UpdateAsync(string reactionId, IDictionary<string, object> data = null, IEnumerable<string> targetFeeds = null);
62+
Task<Reaction> UpdateAsync(string reactionId, IDictionary<string, object> data = null, IEnumerable<string> targetFeeds = null, string moderationTemplate = null);
6363
}
6464
}

src/Reactions.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,13 +130,14 @@ private async Task<RestResponse> FilterInternalAsync(ReactionFiltering filtering
130130
return response;
131131
}
132132

133-
public async Task<Reaction> UpdateAsync(string reactionId, IDictionary<string, object> data = null, IEnumerable<string> targetFeeds = null)
133+
public async Task<Reaction> UpdateAsync(string reactionId, IDictionary<string, object> data = null, IEnumerable<string> targetFeeds = null, string moderationTemplate = null)
134134
{
135135
var r = new Reaction
136136
{
137137
Id = reactionId,
138138
Data = data,
139139
TargetFeeds = targetFeeds,
140+
ModerationTemplate = moderationTemplate,
140141
};
141142

142143
var request = _client.BuildAppRequest($"reaction/{reactionId}/", HttpMethod.Put);

tests/ModerationTests.cs

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,30 @@ public async Task TestReactionModeration()
6363

6464
Assert.AreEqual("complete", response.Status);
6565
Assert.AreEqual("remove", response.RecommendedAction);
66+
67+
var updatedData = new Dictionary<string, object>() { { "field", "updated" }, { "number", 3 }, { "text", "pissoar" }, };
68+
var updatedReaction = await Client.Reactions.UpdateAsync(r.Id, updatedData, null, "moderation_config_1_reaction");
69+
70+
Assert.NotNull(updatedReaction);
71+
Assert.AreEqual(updatedReaction.Id, r.Id);
72+
Assert.AreEqual(updatedReaction.Data["field"], "updated");
73+
Assert.AreEqual(updatedReaction.Data["number"], 3);
74+
75+
var updatedResponse = updatedReaction.GetModerationResponse();
76+
Assert.AreEqual("complete", updatedResponse.Status);
77+
Assert.AreEqual("remove", updatedResponse.RecommendedAction);
78+
79+
var updatedData2 = new Dictionary<string, object>() { { "field", "updated" }, { "number", 3 }, { "text", "hello" }, };
80+
var updatedReaction2 = await Client.Reactions.UpdateAsync(r.Id, updatedData2, null, "moderation_config_1_reaction");
81+
82+
Assert.NotNull(updatedReaction2);
83+
Assert.AreEqual(updatedReaction2.Id, r.Id);
84+
Assert.AreEqual(updatedReaction2.Data["field"], "updated");
85+
Assert.AreEqual(updatedReaction2.Data["number"], 3);
86+
87+
var updatedResponse2 = updatedReaction2.GetModerationResponse();
88+
Assert.AreEqual("complete", updatedResponse2.Status);
89+
Assert.AreEqual("remove", updatedResponse2.RecommendedAction);
6690
}
6791

6892
[Test]
@@ -132,4 +156,4 @@ public async Task TestFlagReaction()
132156
Assert.NotNull(response);
133157
}
134158
}
135-
}
159+
}

0 commit comments

Comments
 (0)