@@ -28,13 +28,28 @@ runs:
28
28
shell : bash
29
29
# Filter failed E2E files from the result JSON file, and re-run them.
30
30
run : |
31
- # Extract failed test files and run only those
32
- FAILED_FILES=$(cat $E2E_RESULT_FILEPATH | jq -r '[.suites[] | (if has("suites") then .suites[] | .specs[] else .specs[] end) | select(.tests[].status == "unexpected") | .file] | unique | .[]')
33
- if [[ -n "$FAILED_FILES" ]]; then
34
- echo "Retrying failed test files: $FAILED_FILES"
35
- npx playwright test --config=tests/e2e/playwright.config.ts --grep-invert @todo $FAILED_FILES
31
+ # Check if results file exists
32
+ echo "Checking for results file: $E2E_RESULT_FILEPATH"
33
+ if [[ -f "$E2E_RESULT_FILEPATH" ]]; then
34
+ echo "Results file exists, size: $(wc -c < "$E2E_RESULT_FILEPATH") bytes"
35
+
36
+ # Extract failed test files using the correct JSON structure
37
+ echo "Extracting failed test files..."
38
+ FAILED_FILES=$(cat "$E2E_RESULT_FILEPATH" | jq -r '[.suites[] | .specs[] | select(.tests[].status == "unexpected") | .file] | unique | .[]' 2>/dev/null)
39
+
40
+ if [[ -n "$FAILED_FILES" ]]; then
41
+ echo "Retrying failed test files: $FAILED_FILES"
42
+ npx playwright test --config=tests/e2e/playwright.config.ts --grep-invert @todo $FAILED_FILES
43
+ else
44
+ echo "No failed test files found to retry"
45
+ echo "Debug: Checking JSON structure..."
46
+ echo "JSON keys: $(cat "$E2E_RESULT_FILEPATH" | jq -r 'keys | .[]' 2>/dev/null || echo "Failed to get keys")"
47
+ echo "Has suites: $(cat "$E2E_RESULT_FILEPATH" | jq -r 'has("suites")' 2>/dev/null || echo "Failed to check suites")"
48
+ echo "Suites count: $(cat "$E2E_RESULT_FILEPATH" | jq -r '.suites | length' 2>/dev/null || echo "Failed to get suites count")"
49
+ echo "First suite structure: $(cat "$E2E_RESULT_FILEPATH" | jq -r '.suites[0] | keys | .[]' 2>/dev/null || echo "Failed to get first suite keys")"
50
+ fi
36
51
else
37
- echo "No failed test files found to retry "
52
+ echo "Error: Results file not found at $E2E_RESULT_FILEPATH "
38
53
fi
39
54
40
55
# Archive screenshots if any
0 commit comments