From 7e85dd4f603ebffff8a542e610eb6c5d5827ed25 Mon Sep 17 00:00:00 2001 From: Christophe Hurpeau Date: Fri, 31 Dec 2021 15:49:01 +0000 Subject: [PATCH] fix: update slack home after review is dismissed even if repo is ignored --- src/events/pr-handlers/reviewDismissed.ts | 44 +++++++++++------------ 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/src/events/pr-handlers/reviewDismissed.ts b/src/events/pr-handlers/reviewDismissed.ts index e2f60feb1..a30e08d54 100644 --- a/src/events/pr-handlers/reviewDismissed.ts +++ b/src/events/pr-handlers/reviewDismissed.ts @@ -26,6 +26,7 @@ export default function reviewDismissed( const reviewerGroup = repoContext.getReviewerGroup(reviewer.login); if ( + reviewflowPrContext && !repoContext.shouldIgnore && reviewerGroup && repoContext.config.labels.review[reviewerGroup] @@ -46,19 +47,18 @@ export default function reviewDismissed( { includesReviewerGroup: true }, ); + const isApproved = + hasApprovals && + !hasRequestedReviewsForGroup && + !hasChangesRequestedInReviews; + await updateReviewStatus( updatedPr, context, repoContext, reviewerGroup, { - add: [ - !hasApprovals && 'needsReview', - hasApprovals && - !hasRequestedReviewsForGroup && - !hasChangesRequestedInReviews && - 'approved', - ], + add: [!hasApprovals && 'needsReview', isApproved && 'approved'], remove: [ !hasRequestedReviewsForGroup && !hasChangesRequestedInReviews && @@ -68,22 +68,22 @@ export default function reviewDismissed( ], }, ); + } - if (updatedPr.assignees) { - updatedPr.assignees.forEach((assignee) => { - if (assignee) { - repoContext.slack.updateHome(assignee.login); - } - }); - } - if ( - !updatedPr.assignees || - !updatedPr.assignees.some( - (assignee) => assignee && assignee.login === reviewer.login, - ) - ) { - repoContext.slack.updateHome(reviewer.login); - } + if (pullRequest.assignees) { + pullRequest.assignees.forEach((assignee) => { + if (assignee) { + repoContext.slack.updateHome(assignee.login); + } + }); + } + if ( + !pullRequest.assignees || + !pullRequest.assignees.some( + (assignee) => assignee && assignee.login === reviewer.login, + ) + ) { + repoContext.slack.updateHome(reviewer.login); } if (repoContext.slack) {