Skip to content

Commit 407af64

Browse files
committed
Fixed coverage comment script to avoid piped curl mocks in BATS tests.
1 parent b653046 commit 407af64

2 files changed

Lines changed: 13 additions & 11 deletions

File tree

.circleci/post-coverage-comment.sh

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,25 +38,27 @@ REPO_SLUG="${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}"
3838

3939
MARKER="<!-- coverage-circleci -->"
4040

41-
BODY="$(jq -n --arg body "**Code coverage (CircleCI)**
41+
BODY=$(jq -n --arg body "**Code coverage (CircleCI)**
4242
\`\`\`
4343
${COVERAGE_CONTENT}
4444
\`\`\`
45-
${MARKER}" '{body: $body}')"
45+
${MARKER}" '{body: $body}')
4646

4747
# Minimize previous coverage comments.
48-
EXISTING_IDS=$(curl -s \
48+
COMMENTS_JSON=$(curl -s \
4949
-H "Authorization: token ${GITHUB_TOKEN}" \
5050
-H "Accept: application/vnd.github.v3+json" \
51-
"https://api.github.com/repos/${REPO_SLUG}/issues/${PR_NUMBER}/comments?per_page=100" |
52-
jq -r '.[] | select(.body | contains("<!-- coverage-circleci -->")) | .node_id')
51+
"https://api.github.com/repos/${REPO_SLUG}/issues/${PR_NUMBER}/comments?per_page=100")
52+
53+
EXISTING_IDS=$(echo "${COMMENTS_JSON}" | jq -r '.[] | select(.body | contains("<!-- coverage-circleci -->")) | .node_id')
5354

5455
for NODE_ID in ${EXISTING_IDS}; do
56+
GRAPHQL_BODY=$(jq -n --arg id "${NODE_ID}" '{query: "mutation($id:ID!){minimizeComment(input:{subjectId:$id,classifier:OUTDATED}){minimizedComment{isMinimized}}}", variables: {id: $id}}')
5557
curl -s -X POST \
5658
-H "Authorization: bearer ${GITHUB_TOKEN}" \
5759
-H "Content-Type: application/json" \
5860
"https://api.github.com/graphql" \
59-
-d "$(jq -n --arg id "${NODE_ID}" '{query: "mutation($id:ID!){minimizeComment(input:{subjectId:$id,classifier:OUTDATED}){minimizedComment{isMinimized}}}", variables: {id: $id}}')"
61+
-d "${GRAPHQL_BODY}"
6062
done
6163

6264
# Post new coverage comment.

.vortex/tests/bats/unit/post-coverage-comment.bats

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,9 @@ load ../_helper.bash
7474

7575
declare -a STEPS=(
7676
# GET existing comments - return empty array.
77-
"@curl -s -H Authorization: token token12345 -H Accept: application/vnd.github.v3+json https://api.github.com/repos/myorg/myrepo/issues/123/comments?per_page=100 # []"
77+
'@curl * # []'
7878
# POST new comment.
79-
'@curl -s -X POST -H Authorization: token token12345 -H Accept: application/vnd.github.v3+json https://api.github.com/repos/myorg/myrepo/issues/123/comments * # {"id": 1}'
79+
'@curl * # {"id": 1}'
8080
)
8181

8282
mocks="$(run_steps "setup")"
@@ -102,11 +102,11 @@ load ../_helper.bash
102102

103103
declare -a STEPS=(
104104
# GET existing comments - return one with marker.
105-
'@curl -s -H Authorization: token token12345 -H Accept: application/vnd.github.v3+json https://api.github.com/repos/myorg/myrepo/issues/456/comments?per_page=100 # [{"node_id": "MDEyOklzc3VlQ29tbWVudDE=", "body": "old coverage <!-- coverage-circleci -->"}]'
105+
'@curl * # [{"node_id": "MDEyOklzc3VlQ29tbWVudDE=", "body": "old coverage <!-- coverage-circleci -->"}]'
106106
# POST GraphQL to minimize existing comment.
107-
'@curl -s -X POST -H Authorization: bearer token12345 -H Content-Type: application/json https://api.github.com/graphql * # {"data":{"minimizeComment":{"minimizedComment":{"isMinimized":true}}}}'
107+
'@curl * # {"data":{"minimizeComment":{"minimizedComment":{"isMinimized":true}}}}'
108108
# POST new comment.
109-
'@curl -s -X POST -H Authorization: token token12345 -H Accept: application/vnd.github.v3+json https://api.github.com/repos/myorg/myrepo/issues/456/comments * # {"id": 2}'
109+
'@curl * # {"id": 2}'
110110
)
111111

112112
mocks="$(run_steps "setup")"

0 commit comments

Comments
 (0)