diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..3c59690 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,265 @@ +on: + pull_request: + schedule: + - cron: "0 0 * * *" + +concurrency: + group: ${{ github.head_ref || 'cron' }} + cancel-in-progress: true + +jobs: + tests: + runs-on: ubuntu-latest + strategy: + matrix: + php-version: + - '8.1' + - '8.0' + - '7.4' + - '7.3' + - '7.2' + - '7.1' + - '7.0' + phpunit-version: + - '9.5.0' + - '9.4.0' + - '9.3.0' + - '9.2.0' + - '9.1.0' + - '9.0.0' + - '8.4.0' + - '8.3.0' + - '8.2.0' + - '8.1.0' + - '8.0.0' + - '7.5.0' + - '7.4.0' + - '7.3.0' + - '7.2.0' + - '7.1.0' + - '7.0.0' + - '6.5.0' + - '6.4.0' + - '6.3.0' + - '6.2.0' + - '6.1.0' + - '6.0.0' + + exclude: + # PHP 8.1 Exclusions + - php-version: '8.1' + phpunit-version: '9.4.0' + - php-version: '8.1' + phpunit-version: '9.3.0' + - php-version: '8.1' + phpunit-version: '9.2.0' + - php-version: '8.1' + phpunit-version: '9.1.0' + - php-version: '8.1' + phpunit-version: '9.0.0' + - php-version: '8.1' + phpunit-version: '8.4.0' + - php-version: '8.1' + phpunit-version: '8.3.0' + - php-version: '8.1' + phpunit-version: '8.2.0' + - php-version: '8.1' + phpunit-version: '8.1.0' + - php-version: '8.1' + phpunit-version: '8.0.0' + - php-version: '8.1' + phpunit-version: '7.5.0' + - php-version: '8.1' + phpunit-version: '7.4.0' + - php-version: '8.1' + phpunit-version: '7.3.0' + - php-version: '8.1' + phpunit-version: '7.2.0' + - php-version: '8.1' + phpunit-version: '7.1.0' + - php-version: '8.1' + phpunit-version: '7.0.0' + - php-version: '8.1' + phpunit-version: '6.5.0' + - php-version: '8.1' + phpunit-version: '6.4.0' + - php-version: '8.1' + phpunit-version: '6.3.0' + - php-version: '8.1' + phpunit-version: '6.2.0' + - php-version: '8.1' + phpunit-version: '6.1.0' + - php-version: '8.1' + phpunit-version: '6.0.0' + + # PHP 8.0 Exclusions + - php-version: '8.0' + phpunit-version: '9.2.0' + - php-version: '8.0' + phpunit-version: '9.1.0' + - php-version: '8.0' + phpunit-version: '9.0.0' + - php-version: '8.0' + phpunit-version: '8.4.0' + - php-version: '8.0' + phpunit-version: '8.3.0' + - php-version: '8.0' + phpunit-version: '8.2.0' + - php-version: '8.0' + phpunit-version: '8.1.0' + - php-version: '8.0' + phpunit-version: '8.0.0' + - php-version: '8.0' + phpunit-version: '7.5.0' + - php-version: '8.0' + phpunit-version: '7.4.0' + - php-version: '8.0' + phpunit-version: '7.3.0' + - php-version: '8.0' + phpunit-version: '7.2.0' + - php-version: '8.0' + phpunit-version: '7.1.0' + - php-version: '8.0' + phpunit-version: '7.0.0' + - php-version: '8.0' + phpunit-version: '6.5.0' + - php-version: '8.0' + phpunit-version: '6.4.0' + - php-version: '8.0' + phpunit-version: '6.3.0' + - php-version: '8.0' + phpunit-version: '6.2.0' + - php-version: '8.0' + phpunit-version: '6.1.0' + - php-version: '8.0' + phpunit-version: '6.0.0' + + # PHP 7.4 Exclusions + - php-version: '7.4' + phpunit-version: '8.1.0' + - php-version: '7.4' + phpunit-version: '8.0.0' + - php-version: '7.4' + phpunit-version: '7.4.0' + - php-version: '7.4' + phpunit-version: '7.3.0' + - php-version: '7.4' + phpunit-version: '7.2.0' + - php-version: '7.4' + phpunit-version: '7.1.0' + - php-version: '7.4' + phpunit-version: '7.0.0' + - php-version: '7.4' + phpunit-version: '6.5.0' + - php-version: '7.4' + phpunit-version: '6.4.0' + - php-version: '7.4' + phpunit-version: '6.3.0' + - php-version: '7.4' + phpunit-version: '6.2.0' + - php-version: '7.4' + phpunit-version: '6.1.0' + - php-version: '7.4' + phpunit-version: '6.0.0' + + # PHP 7.2 Exclusions + - php-version: '7.2' + phpunit-version: '9.5.0' + - php-version: '7.2' + phpunit-version: '9.4.0' + - php-version: '7.2' + phpunit-version: '9.3.0' + - php-version: '7.2' + phpunit-version: '9.2.0' + - php-version: '7.2' + phpunit-version: '9.1.0' + - php-version: '7.2' + phpunit-version: '9.0.0' + + # PHP 7.1 Exclusions + - php-version: '7.1' + phpunit-version: '9.5.0' + - php-version: '7.1' + phpunit-version: '9.4.0' + - php-version: '7.1' + phpunit-version: '9.3.0' + - php-version: '7.1' + phpunit-version: '9.2.0' + - php-version: '7.1' + phpunit-version: '9.1.0' + - php-version: '7.1' + phpunit-version: '9.0.0' + - php-version: '7.1' + phpunit-version: '8.5.0' + - php-version: '7.1' + phpunit-version: '8.4.0' + - php-version: '7.1' + phpunit-version: '8.3.0' + - php-version: '7.1' + phpunit-version: '8.2.0' + - php-version: '7.1' + phpunit-version: '8.1.0' + - php-version: '7.1' + phpunit-version: '8.0.0' + + # PHP 7.0 Exclusions + - php-version: '7.0' + phpunit-version: '9.5.0' + - php-version: '7.0' + phpunit-version: '9.4.0' + - php-version: '7.0' + phpunit-version: '9.3.0' + - php-version: '7.0' + phpunit-version: '9.2.0' + - php-version: '7.0' + phpunit-version: '9.1.0' + - php-version: '7.0' + phpunit-version: '9.0.0' + - php-version: '7.0' + phpunit-version: '8.5.0' + - php-version: '7.0' + phpunit-version: '8.4.0' + - php-version: '7.0' + phpunit-version: '8.3.0' + - php-version: '7.0' + phpunit-version: '8.2.0' + - php-version: '7.0' + phpunit-version: '8.1.0' + - php-version: '7.0' + phpunit-version: '8.0.0' + - php-version: '7.0' + phpunit-version: '7.5.0' + - php-version: '7.0' + phpunit-version: '7.4.0' + - php-version: '7.0' + phpunit-version: '7.3.0' + - php-version: '7.0' + phpunit-version: '7.2.0' + - php-version: '7.0' + phpunit-version: '7.1.0' + - php-version: '7.0' + phpunit-version: '7.0.0' + + name: PHPUnit ${{ matrix.phpunit-version }} on PHP ${{ matrix.php-version }} + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + ref: ${{ github.head_ref }} + + - name: Install PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-version }} + + - name: Install Dependencies + run: composer require phpunit/phpunit:~${{ matrix.phpunit-version }} squizlabs/php_codesniffer phpmd/phpmd + + - name: PHPUnit + run: vendor/bin/phpunit + + - name: PHPCS + run: vendor/bin/phpcs --standard=PSR2 classes/ tests/ + + - name: PHPMD + run: vendor/bin/phpmd classes/ text cleancode,codesize,controversial,design,naming,unusedcode diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 3e4a54a..0000000 --- a/.travis.yml +++ /dev/null @@ -1,250 +0,0 @@ -language: php - -cache: - directories: - - $HOME/.composer/cache - -env: - - PHPUNIT_VERSION=dev-master - - PHPUNIT_VERSION=~9.5.0 - - PHPUNIT_VERSION=~9.4.0 - - PHPUNIT_VERSION=~9.3.0 - - PHPUNIT_VERSION=~9.2.0 - - PHPUNIT_VERSION=~9.1.0 - - PHPUNIT_VERSION=~9.0.0 - - PHPUNIT_VERSION=~8.5.0 - - PHPUNIT_VERSION=~8.4.0 - - PHPUNIT_VERSION=~8.3.0 - - PHPUNIT_VERSION=~8.2.0 - - PHPUNIT_VERSION=~8.1.0 - - PHPUNIT_VERSION=~8.0.0 - - PHPUNIT_VERSION=~7.5.0 - - PHPUNIT_VERSION=~7.4.0 - - PHPUNIT_VERSION=~7.3.0 - - PHPUNIT_VERSION=~7.2.0 - - PHPUNIT_VERSION=~7.1.0 - - PHPUNIT_VERSION=~7.0.0 - - PHPUNIT_VERSION=~6.5.0 - - PHPUNIT_VERSION=~6.4.0 - - PHPUNIT_VERSION=~6.3.0 - - PHPUNIT_VERSION=~6.2.0 - - PHPUNIT_VERSION=~6.1.0 - - PHPUNIT_VERSION=~6.0.0 - -php: - - 8.1 - - 8.0 - - 7.4 - - 7.3 - - 7.2 - - 7.1 - - 7.0 - -matrix: - fast_finish: true - exclude: - - php: 8.1 - env: PHPUNIT_VERSION=~9.4.0 - - php: 8.1 - env: PHPUNIT_VERSION=~9.3.0 - - php: 8.1 - env: PHPUNIT_VERSION=~9.2.0 - - php: 8.1 - env: PHPUNIT_VERSION=~9.1.0 - - php: 8.1 - env: PHPUNIT_VERSION=~9.0.0 - - php: 8.1 - env: PHPUNIT_VERSION=~8.4.0 - - php: 8.1 - env: PHPUNIT_VERSION=~8.3.0 - - php: 8.1 - env: PHPUNIT_VERSION=~8.2.0 - - php: 8.1 - env: PHPUNIT_VERSION=~8.1.0 - - php: 8.1 - env: PHPUNIT_VERSION=~8.0.0 - - php: 8.1 - env: PHPUNIT_VERSION=~7.5.0 - - php: 8.1 - env: PHPUNIT_VERSION=~7.4.0 - - php: 8.1 - env: PHPUNIT_VERSION=~7.3.0 - - php: 8.1 - env: PHPUNIT_VERSION=~7.2.0 - - php: 8.1 - env: PHPUNIT_VERSION=~7.1.0 - - php: 8.1 - env: PHPUNIT_VERSION=~7.0.0 - - php: 8.1 - env: PHPUNIT_VERSION=~6.5.0 - - php: 8.1 - env: PHPUNIT_VERSION=~6.4.0 - - php: 8.1 - env: PHPUNIT_VERSION=~6.3.0 - - php: 8.1 - env: PHPUNIT_VERSION=~6.2.0 - - php: 8.1 - env: PHPUNIT_VERSION=~6.1.0 - - php: 8.1 - env: PHPUNIT_VERSION=~6.0.0 - - - php: 8.0 - env: PHPUNIT_VERSION=~9.2.0 - - php: 8.0 - env: PHPUNIT_VERSION=~9.1.0 - - php: 8.0 - env: PHPUNIT_VERSION=~9.0.0 - - php: 8.0 - env: PHPUNIT_VERSION=~8.4.0 - - php: 8.0 - env: PHPUNIT_VERSION=~8.3.0 - - php: 8.0 - env: PHPUNIT_VERSION=~8.2.0 - - php: 8.0 - env: PHPUNIT_VERSION=~8.1.0 - - php: 8.0 - env: PHPUNIT_VERSION=~8.0.0 - - php: 8.0 - env: PHPUNIT_VERSION=~7.5.0 - - php: 8.0 - env: PHPUNIT_VERSION=~7.4.0 - - php: 8.0 - env: PHPUNIT_VERSION=~7.3.0 - - php: 8.0 - env: PHPUNIT_VERSION=~7.2.0 - - php: 8.0 - env: PHPUNIT_VERSION=~7.1.0 - - php: 8.0 - env: PHPUNIT_VERSION=~7.0.0 - - php: 8.0 - env: PHPUNIT_VERSION=~6.5.0 - - php: 8.0 - env: PHPUNIT_VERSION=~6.4.0 - - php: 8.0 - env: PHPUNIT_VERSION=~6.3.0 - - php: 8.0 - env: PHPUNIT_VERSION=~6.2.0 - - php: 8.0 - env: PHPUNIT_VERSION=~6.1.0 - - php: 8.0 - env: PHPUNIT_VERSION=~6.0.0 - - - php: 7.4 - env: PHPUNIT_VERSION=~8.1.0 - - php: 7.4 - env: PHPUNIT_VERSION=~8.0.0 - - php: 7.4 - env: PHPUNIT_VERSION=~7.4.0 - - php: 7.4 - env: PHPUNIT_VERSION=~7.3.0 - - php: 7.4 - env: PHPUNIT_VERSION=~7.2.0 - - php: 7.4 - env: PHPUNIT_VERSION=~7.1.0 - - php: 7.4 - env: PHPUNIT_VERSION=~7.0.0 - - php: 7.4 - env: PHPUNIT_VERSION=~6.5.0 - - php: 7.4 - env: PHPUNIT_VERSION=~6.4.0 - - php: 7.4 - env: PHPUNIT_VERSION=~6.3.0 - - php: 7.4 - env: PHPUNIT_VERSION=~6.2.0 - - php: 7.4 - env: PHPUNIT_VERSION=~6.1.0 - - php: 7.4 - env: PHPUNIT_VERSION=~6.0.0 - - - php: 7.2 - env: PHPUNIT_VERSION=dev-master - - php: 7.2 - env: PHPUNIT_VERSION=~9.5.0 - - php: 7.2 - env: PHPUNIT_VERSION=~9.4.0 - - php: 7.2 - env: PHPUNIT_VERSION=~9.3.0 - - php: 7.2 - env: PHPUNIT_VERSION=~9.2.0 - - php: 7.2 - env: PHPUNIT_VERSION=~9.1.0 - - php: 7.2 - env: PHPUNIT_VERSION=~9.0.0 - - - php: 7.1 - env: PHPUNIT_VERSION=dev-master - - php: 7.1 - env: PHPUNIT_VERSION=~9.5.0 - - php: 7.1 - env: PHPUNIT_VERSION=~9.4.0 - - php: 7.1 - env: PHPUNIT_VERSION=~9.3.0 - - php: 7.1 - env: PHPUNIT_VERSION=~9.2.0 - - php: 7.1 - env: PHPUNIT_VERSION=~9.1.0 - - php: 7.1 - env: PHPUNIT_VERSION=~9.0.0 - - php: 7.1 - env: PHPUNIT_VERSION=~8.5.0 - - php: 7.1 - env: PHPUNIT_VERSION=~8.4.0 - - php: 7.1 - env: PHPUNIT_VERSION=~8.3.0 - - php: 7.1 - env: PHPUNIT_VERSION=~8.2.0 - - php: 7.1 - env: PHPUNIT_VERSION=~8.1.0 - - php: 7.1 - env: PHPUNIT_VERSION=~8.0.0 - - - php: 7.0 - env: PHPUNIT_VERSION=dev-master - - php: 7.0 - env: PHPUNIT_VERSION=~9.5.0 - - php: 7.0 - env: PHPUNIT_VERSION=~9.4.0 - - php: 7.0 - env: PHPUNIT_VERSION=~9.3.0 - - php: 7.0 - env: PHPUNIT_VERSION=~9.2.0 - - php: 7.0 - env: PHPUNIT_VERSION=~9.1.0 - - php: 7.0 - env: PHPUNIT_VERSION=~9.0.0 - - php: 7.0 - env: PHPUNIT_VERSION=~8.5.0 - - php: 7.0 - env: PHPUNIT_VERSION=~8.4.0 - - php: 7.0 - env: PHPUNIT_VERSION=~8.3.0 - - php: 7.0 - env: PHPUNIT_VERSION=~8.2.0 - - php: 7.0 - env: PHPUNIT_VERSION=~8.1.0 - - php: 7.0 - env: PHPUNIT_VERSION=~8.0.0 - - php: 7.0 - env: PHPUNIT_VERSION=~7.5.0 - - php: 7.0 - env: PHPUNIT_VERSION=~7.4.0 - - php: 7.0 - env: PHPUNIT_VERSION=~7.3.0 - - php: 7.0 - env: PHPUNIT_VERSION=~7.2.0 - - php: 7.0 - env: PHPUNIT_VERSION=~7.1.0 - - php: 7.0 - env: PHPUNIT_VERSION=~7.0.0 - allow_failures: - - env: PHPUNIT_VERSION=dev-master - -install: - - composer require phpunit/phpunit:${PHPUNIT_VERSION} - - composer require squizlabs/php_codesniffer - - composer require phpmd/phpmd - -script: - - vendor/bin/phpunit - - vendor/bin/phpcs --standard=PSR2 classes/ tests/ - - vendor/bin/phpmd classes/ text cleancode,codesize,controversial,design,naming,unusedcode diff --git a/README.md b/README.md index 74d273e..016a872 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,11 @@ +[![.github/workflows/tests.yml](https://github.com/php-mock/php-mock-phpunit/actions/workflows/tests.yml/badge.svg)](https://github.com/php-mock/php-mock-phpunit/actions/workflows/tests.yml) + # Mock PHP built-in functions with PHPUnit This package integrates the function mock library [PHP-Mock](https://github.com/php-mock/php-mock) with PHPUnit. -# Installation +## Installation Use [Composer](https://getcomposer.org/): @@ -11,7 +13,7 @@ Use [Composer](https://getcomposer.org/): composer require --dev php-mock/php-mock-phpunit ``` -# Usage +## Usage PHP-Mock integrates with the trait [`PHPMock`](http://php-mock.github.io/php-mock-phpunit/api/class-phpmock.phpunit.PHPMock.html) @@ -22,8 +24,6 @@ With this method you can build a mock in the way you are used to build a PHPUnit mock: ```php -