diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml new file mode 100644 index 0000000..57508d3 --- /dev/null +++ b/.github/workflows/run-tests.yml @@ -0,0 +1,72 @@ +on: + push: + pull_request: + schedule: + - cron: '0 0 * * *' + +jobs: + php-tests: + runs-on: ubuntu-latest + + strategy: + matrix: + php: [7.4, 7.3, 7.2] + laravel: [7.*] + testbench: [5.*] + dependency-version: [prefer-lowest, prefer-stable] + include: + - laravel: 7.* + testbench: 5.* + php: 7.4 + dependency-version: prefer-stable + - laravel: 6.* + testbench: 4.* + php: 7.3 + dependency-version: prefer-stable + - laravel: 5.8.* + testbench: 3.8.* + php: 7.3 + dependency-version: prefer-stable + - laravel: 5.7.* + testbench: 3.7.* + php: 7.2 + dependency-version: prefer-stable + - laravel: 5.6.* + testbench: 3.6.* + php: 7.2 + dependency-version: prefer-stable + - laravel: 5.5.* + testbench: 3.5.* + php: 7.2 + dependency-version: prefer-stable + exclude: + - laravel: 5.7.* + php: 7.4 + - laravel: 5.6.* + php: 7.4 + - laravel: 5.5.* + php: 7.4 + + name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + coverage: none + + - name: Install dependencies + run: | + composer remove phpro/grumphp --no-interaction --no-update --dev + composer require "laravel/framework:${{ matrix.laravel }}" "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update --no-progress + composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest + + - name: Execute Unit Tests + run: vendor/bin/phpunit + + - name: Check PSR-12 Codestyle + run: vendor/bin/phpcs --standard=psr2 src/ diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 9d37177..0000000 --- a/.travis.yml +++ /dev/null @@ -1,67 +0,0 @@ -language: php - -## Cache composer -cache: - directories: - - $HOME/.composer/cache - -env: - global: - - RUN_PHPCS=0 - -matrix: - include: - - php: '7.2' - env: LARAVEL='5.5.*' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.2' - env: LARAVEL='5.5.*' COMPOSER_FLAGS='--prefer-stable' - - php: '7.2' - env: LARAVEL='5.8.*' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.2' - env: LARAVEL='5.8.*' COMPOSER_FLAGS='--prefer-stable' - - php: '7.2' - env: LARAVEL='^6.0' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.2' - env: LARAVEL='^6.0' COMPOSER_FLAGS='--prefer-stable' - - php: '7.3' - env: LARAVEL='5.5.*' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.3' - env: LARAVEL='5.5.*' COMPOSER_FLAGS='--prefer-stable' - - php: '7.3' - env: LARAVEL='5.8.*' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.3' - env: LARAVEL='5.8.*' COMPOSER_FLAGS='--prefer-stable' - - php: '7.3' - env: LARAVEL='^6.0' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.3' - env: LARAVEL='^6.0' COMPOSER_FLAGS='--prefer-stable' - - php: '7.4' - env: LARAVEL='5.5.*' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.4' - env: LARAVEL='5.5.*' COMPOSER_FLAGS='--prefer-stable' - - php: '7.4' - env: LARAVEL='5.8.*' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.4' - env: LARAVEL='5.8.*' COMPOSER_FLAGS='--prefer-stable' - - php: '7.4' - env: LARAVEL='^6.0' COMPOSER_FLAGS='--prefer-lowest' - - php: '7.4' - env: LARAVEL='^6.0' COMPOSER_FLAGS='--prefer-stable' RUN_PHPCS=1 - - php: '7.4' - env: LARAVEL='^7.0' COMPOSER_FLAGS='--prefer-stable' RUN_PHPCS=1 - -before_script: - - phpenv config-rm xdebug.ini || true - -install: - - travis_retry composer remove phpro/grumphp --no-interaction --no-update --dev - - composer require "illuminate/support:${LARAVEL}" --no-interaction --no-update - - composer require "illuminate/console:${LARAVEL}" --no-interaction --no-update - - composer require "illuminate/filesystem:${LARAVEL}" --no-interaction --no-update - - composer require --dev "illuminate/config:${LARAVEL}" --no-interaction --no-update - - composer require --dev "illuminate/view:${LARAVEL}" --no-interaction --no-update - - travis_retry composer update ${COMPOSER_FLAGS} --no-interaction --prefer-dist --no-suggest - -script: - - vendor/bin/phpunit - - if [[ $RUN_PHPCS = 1 ]]; then vendor/bin/phpcs --standard=psr2 src/; fi diff --git a/composer.json b/composer.json index 0cf5960..3010b5b 100644 --- a/composer.json +++ b/composer.json @@ -35,7 +35,7 @@ "mockery/mockery": "^1.3", "orchestra/testbench": "^3 || ^4 || ^5", "phpro/grumphp": "^0.17.1", - "squizlabs/php_codesniffer": "^3" + "squizlabs/php_codesniffer": "^3.5" }, "extra": { "branch-alias": {