From 5d2497aaa1b28f6dd619389700a7ade6d3027ae0 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 15:59:16 +0100 Subject: [PATCH 01/16] initial workflow --- .github/workflows/unit-test.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/unit-test.yml diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml new file mode 100644 index 0000000..be2dc01 --- /dev/null +++ b/.github/workflows/unit-test.yml @@ -0,0 +1,18 @@ +name: unit-test.yml +on: [ push ] + +jobs: + unit-test: + strategy: + matrix: + os: [ ubuntu-latest, windows-latest ] + php: [ '8.0', '8.1', '8.2', '8.3', '8.4' ] + + runs-on: ${{matrix.os}} + + steps: + - uses: actions/checkout@v4 + - uses: php-actions/composer@v6 + - uses: php-actions/phpunit@v4 + with: + php_version: ${{matrix.php}} From 569fa5953ca0b6e9eaa7712a621a5819e43a18b2 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:00:49 +0100 Subject: [PATCH 02/16] set composer version --- .github/workflows/unit-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index be2dc01..ee6363b 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -13,6 +13,8 @@ jobs: steps: - uses: actions/checkout@v4 - uses: php-actions/composer@v6 + with: + php_version: ${{matrix.php}} - uses: php-actions/phpunit@v4 with: php_version: ${{matrix.php}} From 1fa6b0f1df0632c2c6067b9e78034a76fdc2dbfc Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:07:03 +0100 Subject: [PATCH 03/16] use shivammathur --- .github/workflows/unit-test.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index ee6363b..635933f 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -12,9 +12,7 @@ jobs: steps: - uses: actions/checkout@v4 - - uses: php-actions/composer@v6 + - uses: shivammathur/setup-php@v2 with: - php_version: ${{matrix.php}} - - uses: php-actions/phpunit@v4 - with: - php_version: ${{matrix.php}} + php-version: ${{matrix.php}} + tools: composer, phpunit From b2cdcc5248177e06ec40809016f0f17790c841f0 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:08:30 +0100 Subject: [PATCH 04/16] run --- .github/workflows/unit-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 635933f..e3ebc1a 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -16,3 +16,5 @@ jobs: with: php-version: ${{matrix.php}} tools: composer, phpunit + - run: composer install -n --prefer-dist + - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --log-junit /tmp/test-results/phpunit/junit.xml From 10d3cd349466b6a4f733d63b28557a3461459d0e Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:10:34 +0100 Subject: [PATCH 05/16] fix test --- tests/CubexTest.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/CubexTest.php b/tests/CubexTest.php index 821a27f..9b663ee 100644 --- a/tests/CubexTest.php +++ b/tests/CubexTest.php @@ -395,6 +395,9 @@ public function testFromContext() public function testDir() { $cubex = $this->_cubex(); - self::assertEquals(__DIR__ . '/.cubex/', Cubex::dir($cubex->getContext())); + self::assertEquals( + __DIR__ . DIRECTORY_SEPARATOR . '.cubex' . DIRECTORY_SEPARATOR, + Cubex::dir($cubex->getContext()) + ); } } From 0bba5f9e03e4d1e5a71f7b691fc6905baf8b5c1c Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:17:12 +0100 Subject: [PATCH 06/16] update coverage --- .github/workflows/unit-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index e3ebc1a..20c74ba 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -15,6 +15,7 @@ jobs: - uses: shivammathur/setup-php@v2 with: php-version: ${{matrix.php}} + coverage: xdebug tools: composer, phpunit - run: composer install -n --prefer-dist - - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --log-junit /tmp/test-results/phpunit/junit.xml + - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml From c85d6f0d7947a0799d0ed735fd0d23a6c4019476 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:23:17 +0100 Subject: [PATCH 07/16] output coverage --- .github/workflows/unit-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 20c74ba..09f648e 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -18,4 +18,4 @@ jobs: coverage: xdebug tools: composer, phpunit - run: composer install -n --prefer-dist - - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml + - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml From bd05cecfa03a8256a8f84b61623468e5b60cf1fb Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:26:17 +0100 Subject: [PATCH 08/16] test coverage --- .github/workflows/unit-test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 09f648e..b4500a0 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,3 +19,6 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml + - uses: lucassabreu/comment-coverage-clover@v0.15.4 + with: + file: coverage.xml From 835110c7d422c13e1c288911b8eb45322acf6319 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:28:08 +0100 Subject: [PATCH 09/16] switch to check --- .github/workflows/unit-test.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index b4500a0..c962ffd 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,6 +19,8 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml - - uses: lucassabreu/comment-coverage-clover@v0.15.4 + - uses: johanvanhelden/gha-clover-test-coverage-check@v1 + id: coverage with: - file: coverage.xml + percentage: "100" + filename: "coverage.xml" From 74fc120cf65c2a44ed63f642fea525c9d648b77b Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:43:47 +0100 Subject: [PATCH 10/16] reduce required coverage --- .github/workflows/unit-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index c962ffd..b43a53d 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -22,5 +22,5 @@ jobs: - uses: johanvanhelden/gha-clover-test-coverage-check@v1 id: coverage with: - percentage: "100" + percentage: "70" filename: "coverage.xml" From caed1102a45b4b0bbf8a1631360144683459a7d3 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:47:15 +0100 Subject: [PATCH 11/16] replace coverage checker --- .github/workflows/unit-test.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index b43a53d..c9eae57 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,8 +19,7 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml - - uses: johanvanhelden/gha-clover-test-coverage-check@v1 - id: coverage + - uses: kcjpop/coverage-comments@v2.2 with: - percentage: "70" - filename: "coverage.xml" + github-token: ${{ secrets.GITHUB_TOKEN }} + coverage-file: "coverage.xml" From 43d877a7efa87a28ef9ab9e2e20ce37fc5afb208 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:52:34 +0100 Subject: [PATCH 12/16] replace coverage checker --- .github/workflows/unit-test.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index c9eae57..a667359 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,7 +19,5 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml - - uses: kcjpop/coverage-comments@v2.2 - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - coverage-file: "coverage.xml" + - name: Codecov + uses: codecov/codecov-action@v1 From 8f092fd58514030cf0ff9424dcd955567f1132ae Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 16:55:47 +0100 Subject: [PATCH 13/16] replace coverage checker --- .github/workflows/unit-test.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index a667359..4653f24 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,5 +19,8 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml - - name: Codecov - uses: codecov/codecov-action@v1 + - name: PHPUnit Coverage Check + uses: ericsizemore/phpunit-coverage-check-action@2.0.0 + with: + clover_file: "coverage.xml" + threshold: 70 From 2f9a57a2ecf15e162d0d9ca56b00d5e4a6164429 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 17:05:46 +0100 Subject: [PATCH 14/16] use `phpunit-coverage-check` --- .github/workflows/unit-test.yml | 6 +----- composer.json | 3 ++- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 4653f24..b8625de 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,8 +19,4 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml - - name: PHPUnit Coverage Check - uses: ericsizemore/phpunit-coverage-check-action@2.0.0 - with: - clover_file: "coverage.xml" - threshold: 70 + - run: php vendor/bin/coverage-check clover.xml 70 diff --git a/composer.json b/composer.json index a857a7f..479fb9b 100644 --- a/composer.json +++ b/composer.json @@ -39,7 +39,8 @@ "ext-xdebug": "*" }, "require-dev": { - "phpunit/phpunit": "9.5.*" + "phpunit/phpunit": "^9", + "rregeer/phpunit-coverage-check": "^0.3.1" }, "autoload": { "psr-4": { From cd0caa13fb924a9ab0a805ee4b42a5ddf0060bc0 Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 17:06:32 +0100 Subject: [PATCH 15/16] fix file path --- .github/workflows/unit-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index b8625de..8bcaa73 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,4 +19,4 @@ jobs: tools: composer, phpunit - run: composer install -n --prefer-dist - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --coverage-clover=coverage.xml - - run: php vendor/bin/coverage-check clover.xml 70 + - run: php vendor/bin/coverage-check coverage.xml 70 From 4971c384546d714f56a00b9ad10955d9ca0882ac Mon Sep 17 00:00:00 2001 From: Tom Kay Date: Fri, 17 Oct 2025 17:08:17 +0100 Subject: [PATCH 16/16] drop circleci --- .circleci/config.yml | 48 -------------------------------------------- 1 file changed, 48 deletions(-) delete mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 1653526..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,48 +0,0 @@ -defaults: &defaults - steps: - # common php steps - - run: echo "http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories - - run: if [ -n "$ADD_PACKAGES" ]; then apk -U add $ADD_PACKAGES; fi; - - run: if [ -n "$ADD_MODULES" ]; then docker-php-ext-install $ADD_MODULES; fi; - - run: echo "date.timezone = UTC" >> $(php --ini |grep Scan |awk '{print $NF}')/timezone.ini - - run: curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer - - # pre-checkout steps - - # checkout - - checkout - - # post-checkout steps - - # run tests - - run: composer install -n --prefer-dist - - run: php vendor/phpunit/phpunit/phpunit -c phpunit.xml --log-junit /tmp/test-results/phpunit/junit.xml - - store_test_results: - path: /tmp/test-results - -version: 2 -jobs: - build-php80: - <<: *defaults - docker: - - image: php:8.0-alpine - build-php81: - <<: *defaults - docker: - - image: php:8.1-alpine - build-php82: - <<: *defaults - docker: - - image: php:8.2-alpine - build-php83: - <<: *defaults - docker: - - image: php:8.3-alpine -workflows: - version: 2 - build: - jobs: - - build-php80 - - build-php81 - - build-php82 -# - build-php83