From 53122b4b3e2e3e764e152e9a98d7ccd215900ef9 Mon Sep 17 00:00:00 2001 From: Foysal Ahamed Date: Tue, 27 Feb 2024 20:52:58 +0100 Subject: [PATCH] :sparkles: Move appealed subject's review state to escalated (#2198) --- packages/ozone/src/mod-service/status.ts | 3 +++ .../ozone/tests/moderation-appeals.test.ts | 26 ++++++++++++++----- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/packages/ozone/src/mod-service/status.ts b/packages/ozone/src/mod-service/status.ts index 2edba64282f..b79160ccdc2 100644 --- a/packages/ozone/src/mod-service/status.ts +++ b/packages/ozone/src/mod-service/status.ts @@ -179,6 +179,9 @@ export const adjustModerationSubjectStatus = async ( subjectStatus.appealed = true newStatus.lastAppealedAt = createdAt subjectStatus.lastAppealedAt = createdAt + // Set reviewState to escalated when appeal events are emitted + subjectStatus.reviewState = REVIEWESCALATED + newStatus.reviewState = REVIEWESCALATED } if ( diff --git a/packages/ozone/tests/moderation-appeals.test.ts b/packages/ozone/tests/moderation-appeals.test.ts index f21098811a7..31dae61f9ef 100644 --- a/packages/ozone/tests/moderation-appeals.test.ts +++ b/packages/ozone/tests/moderation-appeals.test.ts @@ -118,7 +118,7 @@ describe('moderation-appeals', () => { }) // Verify that appeal status changed when appeal report was emitted by moderator - const status = await assertBobsPostStatus(REVIEWOPEN, true) + const status = await assertBobsPostStatus(REVIEWESCALATED, true) expect(status?.appealedAt).not.toBeNull() // Create a report as normal user for carol's post @@ -143,7 +143,11 @@ describe('moderation-appeals', () => { subject: getCarolPostSubject(), }) // Verify that the appeal status on carol's post is true - await assertSubjectStatus(getCarolPostSubject().uri, REVIEWOPEN, true) + await assertSubjectStatus( + getCarolPostSubject().uri, + REVIEWESCALATED, + true, + ) }) it('allows multiple appeals and updates last appealed timestamp', async () => { // Resolve appeal with acknowledge @@ -155,7 +159,7 @@ describe('moderation-appeals', () => { createdBy: sc.dids.carol, }) - const previousStatus = await assertBobsPostStatus(REVIEWOPEN, false) + const previousStatus = await assertBobsPostStatus(REVIEWESCALATED, false) await emitModerationEvent({ event: { @@ -167,7 +171,7 @@ describe('moderation-appeals', () => { }) // Verify that even after the appeal event by bob for his post, the appeal status is true again with new timestamp - const newStatus = await assertBobsPostStatus(REVIEWOPEN, true) + const newStatus = await assertBobsPostStatus(REVIEWESCALATED, true) expect( new Date(`${previousStatus?.lastAppealedAt}`).getTime(), ).toBeLessThan(new Date(`${newStatus?.lastAppealedAt}`).getTime()) @@ -210,7 +214,11 @@ describe('moderation-appeals', () => { createdBy: sc.dids.alice, }) - await assertSubjectStatus(getAlicesPostSubject().uri, REVIEWOPEN, true) + await assertSubjectStatus( + getAlicesPostSubject().uri, + REVIEWESCALATED, + true, + ) // Bob reports it again await emitModerationEvent({ @@ -222,8 +230,12 @@ describe('moderation-appeals', () => { createdBy: sc.dids.bob, }) - // Assert that the status is still REVIEWOPEN, as report events are meant to do - await assertSubjectStatus(getAlicesPostSubject().uri, REVIEWOPEN, true) + // Assert that the status is still REVIEWESCALATED, as report events are meant to do + await assertSubjectStatus( + getAlicesPostSubject().uri, + REVIEWESCALATED, + true, + ) // Emit an escalation event await emitModerationEvent({