72 lines
1.8 KiB
YAML
72 lines
1.8 KiB
YAML
name: Tests
|
|
|
|
on:
|
|
push:
|
|
branches: [ 3.x, 4.x ]
|
|
pull_request:
|
|
branches: [ 3.x, 4.x ]
|
|
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
DCG_TMP_DIR: /dev/shm
|
|
|
|
jobs:
|
|
tests:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
php:
|
|
- "8.3"
|
|
drupal:
|
|
- "11.x"
|
|
dependency-mode:
|
|
- prefer-stable
|
|
- prefer-lowest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Upgrade sqlite3
|
|
run: |
|
|
wget https://www.sqlite.org/2024/sqlite-autoconf-3450300.tar.gz -O /tmp/sqlite.tar.gz
|
|
tar -xzf /tmp/sqlite.tar.gz -C /tmp
|
|
cd /tmp/sqlite-autoconf-3450300
|
|
./configure CFLAGS="-DSQLITE_ENABLE_COLUMN_METADATA=1" --prefix=/usr/local
|
|
make && sudo make install
|
|
sudo ldconfig
|
|
|
|
- name: Install PHP with extensions
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: ${{ matrix.php }}
|
|
ini-values: zend.assertions=1
|
|
tools: composer:v2
|
|
|
|
- name: Install Symfony CLI
|
|
run: |
|
|
echo 'deb [trusted=yes] https://repo.symfony.com/apt/ /' | sudo tee /etc/apt/sources.list.d/symfony-cli.list
|
|
sudo apt update && sudo apt install symfony-cli
|
|
|
|
- name: Install dependencies
|
|
run: composer install --ansi
|
|
|
|
- name: Update dependencies
|
|
run: composer update --${{ matrix.dependency-mode }} --ansi
|
|
|
|
- name: Run lint
|
|
run: ./scripts/lint.sh
|
|
|
|
- name: Run unit tests
|
|
run: ./scripts/unit-tests.sh
|
|
|
|
- name: Run functional tests
|
|
env:
|
|
DCG_DRUPAL_VERSION: ${{ matrix.drupal }}
|
|
run: ./scripts/functional-tests.sh
|
|
|
|
- name: Run SUT tests
|
|
env:
|
|
DCG_DRUPAL_VERSION: ${{ matrix.drupal }}
|
|
run: ./scripts/sut-tests.sh
|