diff --git a/.github/workflows/merge-coverage-bis.yml b/.github/workflows/merge-coverage-bis.yml
new file mode 100644
index 0000000..8d0c1d3
--- /dev/null
+++ b/.github/workflows/merge-coverage-bis.yml
@@ -0,0 +1,56 @@
+name: "Merge Coverage Bis"
+
+on: [pull_request]
+
+env:
+ XDEBUG_MODE: coverage
+
+jobs:
+ unit:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@master
+ - uses: php-actions/composer@master
+ - uses: php-actions/phpunit@master
+ with:
+ php_extensions: xdebug
+ testsuite: unit
+ coverage_php: reports/unit.php
+ - uses: actions/cache/save@v4
+ with:
+ path: reports
+ key: reports-unit-${{ github.run_id }}
+
+ integration:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@master
+ - uses: php-actions/composer@master
+ - uses: php-actions/phpunit@master
+ with:
+ php_extensions: xdebug
+ testsuite: integration
+ coverage_php: reports/integration.php
+ - uses: actions/cache/save@v4
+ with:
+ path: reports
+ key: reports-integration-${{ github.run_id }}
+
+ coverage:
+ runs-on: ubuntu-latest
+ needs: [integration, unit]
+
+ steps:
+ - uses: actions/checkout@v4
+ - uses: actions/cache/restore@v4
+ with:
+ path: reports
+ key: reports-unit-${{ github.run_id }}
+ - uses: actions/cache/restore@v4
+ with:
+ path: reports
+ key: reports-integration-${{ github.run_id }}
+ - uses: php-actions/composer@master
+ - run: php bin/merge-coverage.php
+
+
diff --git a/.github/workflows/merge-coverage.yaml b/.github/workflows/merge-coverage.yaml
new file mode 100644
index 0000000..1ff88bb
--- /dev/null
+++ b/.github/workflows/merge-coverage.yaml
@@ -0,0 +1,64 @@
+name: "Merge Coverage"
+
+on: [pull_request]
+
+jobs:
+ unit:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: shivammathur/setup-php@v2
+ with:
+ tools: composer, phpunit:11
+ coverage: xdebug
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - run: composer install
+ - run: phpunit --testsuite unit --coverage-php reports/unit.php
+ - uses: actions/cache/save@v4
+ with:
+ path: reports
+ key: reports-unit-${{ github.run_id }}
+
+ integration:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: shivammathur/setup-php@v2
+ with:
+ tools: composer, phpunit:11
+ coverage: xdebug
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - run: composer install
+ - run: phpunit --testsuite integration --coverage-php reports/integration.php
+ - uses: actions/cache/save@v4
+ with:
+ path: reports
+ key: reports-integration-${{ github.run_id }}
+
+ coverage:
+ runs-on: ubuntu-latest
+ needs: [integration, unit]
+
+ steps:
+ - uses: actions/checkout@v4
+ - uses: actions/cache/restore@v4
+ with:
+ path: reports
+ key: reports-unit-${{ github.run_id }}
+ - uses: actions/cache/restore@v4
+ with:
+ path: reports
+ key: reports-integration-${{ github.run_id }}
+
+ - uses: shivammathur/setup-php@v2
+ with:
+ tools: composer, phpunit:11
+ coverage: xdebug
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - run: composer install
+ - run: php bin/merge-coverage.php
+
+
diff --git a/.github/workflows/phpunit.yaml b/.github/workflows/phpunit.yaml
index 5788829..a914117 100644
--- a/.github/workflows/phpunit.yaml
+++ b/.github/workflows/phpunit.yaml
@@ -11,7 +11,7 @@ jobs:
- name: Check out repository code
uses: actions/checkout@master
- - uses: php-actions/composer@master
+ - uses: php-actions/composer@master
- name: PHPUnit Tests
uses: php-actions/phpunit@master
diff --git a/.gitignore b/.gitignore
index c7eea7f..f10c6b7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,9 @@
### MacOs ###
.DS_Store
+### PhpStorm ###
+/.idea
+
### Composer ###
composer.lock
composer.phar
@@ -13,3 +16,4 @@ composer.phar
/reports
!/reports/.keep
/coverage
+
diff --git a/Makefile b/Makefile
index 7b7a25d..c7277de 100644
--- a/Makefile
+++ b/Makefile
@@ -13,11 +13,11 @@ test:
classnames.test:
docker compose exec php vendor/bin/phpunit --testsuite classnames
-unit.test:
+unit.test: start
docker compose exec php vendor/bin/phpunit --testsuite unit --coverage-php reports/unit.php
-integration.test:
+integration.test: start
docker compose exec php vendor/bin/phpunit --testsuite integration --coverage-php reports/integration.php
-merge-coverage:
+merge-coverage: unit.test integration.test
docker compose exec php bin/merge-coverage.php
\ No newline at end of file
diff --git a/bin/merge-coverage.php b/bin/merge-coverage.php
index 93cfaa5..0e36b93 100644
--- a/bin/merge-coverage.php
+++ b/bin/merge-coverage.php
@@ -3,19 +3,18 @@
require __DIR__.'/../vendor/autoload.php';
-use \SebastianBergmann\CodeCoverage\CodeCoverage;
-use \SebastianBergmann\CodeCoverage\Report\Html\CustomCssFile;
use \SebastianBergmann\CodeCoverage\Report\Html\Facade as HtmlReport;
use \PHPUnit\Runner\Version;
+$reference = sprintf(' and PHPUnit %s', Version::id());
+$report = new HtmlReport($reference);
+
$unit = include('reports/unit.php');
$integration = include('reports/integration.php');
$unit->merge($integration);
-$reference = sprintf(' and PHPUnit %s', Version::id());
-
-(new HtmlReport($reference))->process($unit, 'coverage');
+$report->process($unit, 'coverage');