diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5d90c18..ea743e8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,5 +1,7 @@ name: run-tests +name: Laravel Package Test + on: push: branches: [main] @@ -7,39 +9,40 @@ on: branches: [main] jobs: - test: - runs-on: ${{ matrix.os }} - strategy: - fail-fast: true - matrix: - os: [ubuntu-latest, windows-latest] - php: [7.4, 8.0] - laravel: [8.*] - stability: [prefer-lowest, prefer-stable] - include: - - laravel: 8.* - testbench: ^6.6 - - name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} - ${{ matrix.os }} - - steps: - - name: Checkout code - uses: actions/checkout@v2 - - - name: Setup PHP - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ matrix.php }} - extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick, fileinfo - coverage: none - - - name: Setup problem matchers - run: | - echo "::add-matcher::${{ runner.tool_cache }}/php.json" - echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" - - name: Install dependencies - run: | - composer require "laravel/framework:${{ matrix.laravel }}" "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update - composer update --${{ matrix.stability }} --prefer-dist --no-interaction - - name: Execute tests - run: vendor/bin/phpunit + test: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: '8.0' + extensions: mbstring, xml, ctype, iconv, mysql + + - name: Cache Composer Packages + uses: actions/cache@v2 + with: + path: ~/.composer/cache + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Install Composer Dependencies + run: composer install --prefer-dist --no-progress --no-suggest + + - name: Setup Laravel Application + run: | + composer create-project --prefer-dist laravel/laravel laravel_app --no-interaction + cd laravel_app + composer require devdojo/auth:dev-main + + - name: Update My Package + run: composer update devdojo/auth --with-dependencies + + - name: Run Migrations + run: php artisan migrate + + - name: Run Tests + run: ./vendor/bin/pest \ No newline at end of file