ref: 9196c18d376d4f18c686bcfec8550f9c8659d5ea
tests/test-format.sh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
#!/bin/sh set -e if [ -z "$GITHUB_BASE_REF" ] then echo "This script is only meant to be run in a GitHub Workflow" exit 1 fi CHANGED_FILES=$(git diff --name-only "$GITHUB_BASE_REF"...HEAD) CHANGED=0 for file in $CHANGED_FILES do [ -e "$file" ] || continue case "$file" in src/libs/*|src/FreeRTOS/*) continue ;; *.cpp|*.h) echo Checking "$file" PATCH="$(basename "$file").patch" git clang-format-14 -q --style file --diff "$GITHUB_BASE_REF" "$file" > "$PATCH" if [ -s "$PATCH" ] then printf "\033[31mError:\033[0m Formatting error in %s\n" "$file" CHANGED=1 else rm "$PATCH" fi esac done if [ $CHANGED = 1 ] then printf "\033[31mError:\033[0m Issues found. You may use the patches provided as artifacts to format the code." exit 1 fi exit 0 |