Skip to content

Commit e88448a

Browse files
committed
chore: Added comment to PR
1 parent 5bceee6 commit e88448a

File tree

1 file changed

+27
-6
lines changed

1 file changed

+27
-6
lines changed

.github/workflows/playwright.yml

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,19 +28,40 @@ jobs:
2828
run: npx playwright install --with-deps
2929
- name: Run Playwright tests
3030
id: test-visual
31-
run: make tests
31+
run: |
32+
make tests
33+
if grep -q -e "Error: A snapshot doesn't exist at" -e "Screenshot comparison failed" output.log; then
34+
echo "Playwright tests failed due to a snapshot issue."
35+
echo "SNAPSHOT_DIFFERENCES=true" >> $GITHUB_ENV
36+
exit 1
37+
elif grep -q "failed" output.log; then
38+
echo "Playwright tests failed due to a non-snapshot issue."
39+
exit 1
40+
fi
3241
- uses: actions/upload-artifact@v4
42+
id: artifact-upload
3343
if: ${{ !cancelled() && failure() && steps.test-visual.conclusion == 'failure' }}
3444
with:
3545
name: playwright-report
3646
path: tests/playwright-report/
3747
retention-days: 3
38-
- uses: actions/upload-artifact@v4
39-
if: ${{ !cancelled() && failure() && steps.test-visual.conclusion == 'failure' }}
48+
- name: Comment on PR with Playwright report
49+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
50+
if: ${{ failure() && env.SNAPSHOT_DIFFERENCES == 'true' }}
4051
with:
41-
name: test-results
42-
path: tests/test-results/
43-
retention-days: 3
52+
script: |
53+
const body = `### <span aria-hidden="true">❌</span> Playwright visual snapshot differences were detected.
54+
55+
View the [Playwright report](${{ steps.artifact-upload.outputs.artifact-url }})
56+
**To approve the snapshot changes and update the snapshots, please comment:** /approve-snapshots`;
57+
58+
await github.rest.issues.createComment({
59+
issue_number: context.issue.number,
60+
owner: context.repo.owner,
61+
repo: context.repo.repo,
62+
body: body,
63+
});
64+
4465
# - name: Update the screenshots based on Ubuntu env on GH
4566
# id: test-visual-update
4667
# if: ${{ failure() && steps.test-visual.conclusion == 'failure' }}

0 commit comments

Comments
 (0)