From 3472b9bd3fb5d1c9c1242ff7884a21aaad9fe167 Mon Sep 17 00:00:00 2001 From: Aidan Woods Date: Mon, 11 Oct 2021 20:25:02 +0100 Subject: [PATCH] GitHub Actions --- .github/workflows/ci.yml | 94 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..15606a3 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,94 @@ +name: Parsedown +on: [push, pull_request] +jobs: + units: + name: Unit Tests + strategy: + matrix: + os: [ubuntu-latest] + php: [8.0, 7.4, 7.3, 7.2, 7.1] + + runs-on: ${{ matrix.os }} + steps: + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + tools: composer:v2 + + - uses: actions/checkout@v2 + - name: Run Tests + run: | + composer update --prefer-dist --no-interaction --no-progress + composer test-units + + mutations: + name: Mutation Tests + strategy: + matrix: + os: [ubuntu-latest] + php: [8.0] + + runs-on: ${{ matrix.os }} + steps: + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + tools: composer:v2 + + - uses: actions/checkout@v2 + - name: Run Tests + run: | + composer update --prefer-dist --no-interaction --no-progress + vendor/bin/infection --show-mutations --threads=4 --min-msi=90 --min-covered-msi=90 + + static-analysis: + name: Code Format and Static Analysis + strategy: + matrix: + os: [ubuntu-latest] + php: [8.0] + + runs-on: ${{ matrix.os }} + steps: + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + tools: composer:v2 + + - uses: actions/checkout@v2 + - name: Run Tests + run: | + composer install --prefer-dist --no-interaction --no-progress + composer test-static -- --shepherd + composer test-formatting + composer test-dead-code + + commonmark: + name: CommonMark + continue-on-error: true + strategy: + matrix: + os: [ubuntu-latest] + php: [8.0] + + runs-on: ${{ matrix.os }} + steps: + - name: Set up PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + tools: composer:v2 + + - uses: actions/checkout@v2 + - name: Install + run: composer install --prefer-dist --no-interaction --no-progress + + - name: CommonMark Strict + run: composer test-commonmark + + - name: CommonMark Weak + run: composer test-commonmark-weak +