Add GitHub action to check that include guards use standard pattern

Based on work by @innerout, but finished and merged by me, because
the GitHub action refused to run for him.

Closes #2075
Closes #2091
This commit is contained in:
Martin Hořeňovský 2020-11-06 15:36:26 +01:00
parent f97436a1f7
commit 2baa472bcc
No known key found for this signature in database
GPG Key ID: DE48307B8B0D381A

View File

@ -0,0 +1,33 @@
name: Check header guards
# Run this workflow every time a new commit pushed to your repository
on: [push, pull_request]
jobs:
# Set the job key. The key is displayed as the job name
# when a job name is not provided
checkguard:
# Name the Job
name: Check include guard naming convention
# Set the type of machine to run on
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Dependencies
uses: actions/setup-python@v2
with:
python-version: '3.7'
- name: Install checkguard
run: pip install guardonce
- name: Run checkguard
run: |
wrong_files=$(checkguard -r src/catch2/ -p "name | append _INCLUDED | upper")
if [[ $wrong_files ]]; then
echo "Files with wrong header guard:"
echo $wrong_files
exit 1
fi