name: CI on: [push, pull_request] jobs: tests: runs-on: ubuntu-latest strategy: matrix: php: [7.3, 7.4, 8.0] symfony: [4.4, 5.2] steps: - name: Checkout code uses: actions/checkout@v2 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} tools: composer:v2 extensions: ctype, iconv, intl, json, mbstring, pdo, pdo_sqlite coverage: none - name: Checkout Symfony 4.4 Sample if: matrix.symfony == 4.4 uses: actions/checkout@v2 with: repository: Codeception/symfony-module-tests path: framework-tests ref: 4.4 - name: Checkout Symfony 5.2 Sample if: matrix.symfony == 5.2 uses: actions/checkout@v2 with: repository: Codeception/symfony-module-tests path: framework-tests ref: main - name: Get composer cache directory id: composer-cache run: echo "::set-output name=dir::$(composer config cache-files-dir)" - name: Cache composer dependencies uses: actions/cache@v2.1.3 with: path: ${{ steps.composer-cache.outputs.dir }} key: ${{ runner.os }}-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }} restore-keys: ${{ runner.os }}-${{ matrix.php }}-composer- - name: Install dependencies run: | composer require symfony/finder=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer require symfony/yaml=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer require symfony/console=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer require symfony/event-dispatcher=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer require symfony/css-selector=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer require symfony/dom-crawler=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer require symfony/browser-kit=${{ matrix.symfony }} --ignore-platform-req=php --no-update composer install --prefer-dist --no-progress --ignore-platform-req=php - name: Validate composer.json and composer.lock run: composer validate working-directory: framework-tests - name: Install Symfony Sample run: | composer remove codeception/module-symfony --dev --no-update composer update --no-progress working-directory: framework-tests - name: Prepare the test environment run: | php bin/console d:s:u -f php bin/console d:f:l -q working-directory: framework-tests - name: Run test suite run: | php vendor/bin/codecept build -c framework-tests php vendor/bin/codecept run Functional -c framework-tests