66build :
77 image : default-jammy
88 environment :
9- php : 8.4.0
9+ php : 8.4.11
1010 nodes :
1111 coverage :
1212 services :
@@ -18,13 +18,97 @@ build:
1818 - 3306
1919 ramdisks :
2020 - /var/run/mysqld
21+ postgres : 10
2122 dependencies :
2223 before :
24+ - printf "\n" | pecl install xdebug-3.4.7
2325 - mysql -u root -e "CREATE DATABASE IF NOT EXISTS test CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
26+ - PGPASSWORD=scrutinizer psql -h 127.0.0.1 -U scrutinizer -d scrutinizer -tc "SELECT 1 FROM pg_database WHERE datname = 'divergence'" | grep -q 1 || PGPASSWORD=scrutinizer createdb -h 127.0.0.1 -U scrutinizer divergence
27+ - PGPASSWORD=scrutinizer psql -h 127.0.0.1 -U scrutinizer -d scrutinizer -tc "SELECT 1 FROM pg_database WHERE datname = 'test'" | grep -q 1 || PGPASSWORD=scrutinizer createdb -h 127.0.0.1 -U scrutinizer test
28+ - |
29+ cat > config/db.dev.php <<'PHP'
30+ <?php
31+ return [
32+ 'mysql' => [
33+ 'host' => '127.0.0.1',
34+ 'database' => 'divergence',
35+ 'username' => 'divergence',
36+ 'password' => 'not-a-secret',
37+ ],
38+ 'dev-mysql' => [
39+ 'host' => '127.0.0.1',
40+ 'database' => 'divergence',
41+ 'username' => 'divergence',
42+ 'password' => 'not-a-secret',
43+ ],
44+ 'tests-mysql' => [
45+ 'host' => '127.0.0.1',
46+ 'database' => 'test',
47+ 'username' => 'root',
48+ 'password' => '',
49+ ],
50+ 'tests-mysql-socket' => [
51+ 'socket' => '/var/run/mysqld/mysqld.sock',
52+ 'database' => 'test',
53+ 'username' => 'root',
54+ 'password' => '',
55+ ],
56+ 'pgsql' => [
57+ 'driver' => 'pgsql',
58+ 'host' => '127.0.0.1',
59+ 'port' => 5432,
60+ 'database' => 'divergence',
61+ 'username' => 'scrutinizer',
62+ 'password' => 'scrutinizer',
63+ ],
64+ 'dev-pgsql' => [
65+ 'driver' => 'pgsql',
66+ 'host' => '127.0.0.1',
67+ 'port' => 5432,
68+ 'database' => 'divergence',
69+ 'username' => 'scrutinizer',
70+ 'password' => 'scrutinizer',
71+ ],
72+ 'tests-sqlite-memory' => [
73+ 'path' => ':memory:',
74+ 'foreign_keys' => true,
75+ 'busy_timeout' => 5000,
76+ ],
77+ 'sqlite' => [
78+ 'path' => __DIR__ . '/../var/sqlite/app.sqlite',
79+ 'foreign_keys' => true,
80+ 'busy_timeout' => 5000,
81+ ],
82+ 'dev-sqlite' => [
83+ 'path' => __DIR__ . '/../var/sqlite/dev.sqlite',
84+ 'foreign_keys' => true,
85+ 'busy_timeout' => 5000,
86+ ],
87+ 'tests-sqlite-files' => [
88+ 'path' => __DIR__ . '/../var/sqlite/tests.sqlite',
89+ 'foreign_keys' => true,
90+ 'busy_timeout' => 5000,
91+ ],
92+ 'tests-pgsql' => [
93+ 'driver' => 'pgsql',
94+ 'host' => '127.0.0.1',
95+ 'port' => 5432,
96+ 'database' => 'test',
97+ 'username' => 'scrutinizer',
98+ 'password' => 'scrutinizer',
99+ ],
100+ ];
101+ PHP
24102 - sudo apt install -y ffmpeg exiftool
25103 tests :
26104 override :
27- - command : mkdir -p build/logs && DIVERGENCE_TEST_DB=tests-mysql phpdbg -qrr ./vendor/bin/phpunit --coverage-clover build/logs/clover.xml
105+ - command : mkdir -p build/coverage build/logs && DIVERGENCE_TEST_DB=tests-mysql XDEBUG_MODE=coverage php -d zend_extension=$(php-config --extension-dir)/xdebug.so -d xdebug.mode=coverage ./vendor/bin/phpunit --coverage-php build/coverage/mysql.cov
106+ idle_timeout : 300
107+ - command : mkdir -p build/coverage build/logs && DIVERGENCE_TEST_DB=tests-sqlite-memory XDEBUG_MODE=coverage php -d zend_extension=$(php-config --extension-dir)/xdebug.so -d xdebug.mode=coverage ./vendor/bin/phpunit --coverage-php build/coverage/sqlite.cov
108+ idle_timeout : 300
109+ - command : mkdir -p build/coverage build/logs && DIVERGENCE_TEST_DB=tests-pgsql XDEBUG_MODE=coverage php -d zend_extension=$(php-config --extension-dir)/xdebug.so -d xdebug.mode=coverage ./vendor/bin/phpunit --coverage-php build/coverage/pgsql.cov
110+ idle_timeout : 300
111+ - command : vendor/bin/phpcov merge --clover build/logs/clover.xml build/coverage
28112 idle_timeout : 300
29113 coverage :
30114 file : ' build/logs/clover.xml'
0 commit comments