Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions test/defaults
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ declare -gA latest_composer
# Defaults for scalingo-22:
default_php["scalingo-22"]="8.1." # This one depends on the semver stable rule configuration
default_nginx["scalingo-22"]="1.28."
default_composer["scalingo-22"]="2.8."
latest_composer["scalingo-22"]="2.8.12"
default_composer["scalingo-22"]="2.9."
latest_composer["scalingo-22"]="2.9.2"

# Defaults for scalingo-24:
default_php["scalingo-24"]="8.4."
default_nginx["scalingo-24"]="1.28."
default_composer["scalingo-24"]="2.8."
latest_composer["scalingo-24"]="2.8.12"
default_composer["scalingo-24"]="2.9."
latest_composer["scalingo-24"]="2.9.2"


test::defaults::classic() {
Expand Down
9 changes: 9 additions & 0 deletions test/fixtures/composer-2.9.2/composer/composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"extra": {
"paas": {
"engines": {
"composer": "2.9.2"
}
}
}
}
18 changes: 18 additions & 0 deletions test/fixtures/composer-2.9.2/composer/composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion test/fixtures/composer-latest
5 changes: 5 additions & 0 deletions test/fixtures/php-8.5/composer/composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"require": {
"php": "~8.5"
}
}
20 changes: 20 additions & 0 deletions test/fixtures/php-8.5/composer/composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions test/fixtures/php-8.5/optional_builtin/composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"require": {
"php": "~8.5",
"ext-calendar": "*",
"ext-ftp": "*",
"ext-gettext": "*",
"ext-gmp": "*",
"ext-sodium": "*",
"ext-tidy": "*"
}
}
26 changes: 26 additions & 0 deletions test/fixtures/php-8.5/optional_builtin/composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

77 changes: 77 additions & 0 deletions test/php85
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
#!/usr/bin/env bash

readonly default_builtins_extensions_85=(
"bcmath" "bz2" "Core" "ctype" "curl" "date" "dom" "exif" "fileinfo"
"filter" "gd" "hash" "iconv" "intl" "json" "libxml" "mbstring" "mysqli"
"mysqlnd" "openssl" "pcntl" "pcre" "PDO" "pdo_mysql" "pdo_pgsql"
"pdo_sqlite" "pgsql" "Phar" "posix" "random" "readline" "Reflection"
"session" "shmop" "SimpleXML" "soap" "sockets" "SPL" "sqlite3" "standard"
"tokenizer" "xml" "xmlreader" "xmlwriter" "xsl" "Zend OPcache" "zip" "zlib"
)

readonly default_pecl_extensions_85=(
"apcu" "mongodb" "redis"
)

readonly optional_builtin_extensions_85=(
"calendar" "ftp" "gettext" "gmp" "sodium" "tidy"
)

test::php85::classic() {
#
# Test a deployment of a classic app (not using Composer)
# Specifying we want PHP 8.4.x via environment
#

PHP_VERSION="8.5"
export PHP_VERSION

test::utils::setupFixture "defaults/classic"
test::helpers::classic_deploy \
"8.5." \
"${default_nginx["${STACK}"]}"
}

test::php85::composer() {
#
# Test a deployment of a PHP app using Composer
# Specifying we want PHP 8.4.x via composer.json
#

test::utils::setupFixture "php-8.5/composer"
test::helpers::composer_deploy \
"8.5." \
"${default_nginx["${STACK}"]}" \
"${default_composer["${STACK}"]}"
}

test::php85::extensions::default() {
#
# Test the presence of default enabled built-in extensions.
#

test::utils::setupFixture "php-8.5/composer"

test::utils::compile
test::helpers::enter_prod

local extensions=("${default_builtin_extensions_85[@]}")
extensions+=("${default_pecl_extensions_85[@]}")

test::helpers::enabled_extensions "${extensions[@]}"
}

test::php85::extensions::optional_builtin() {
#
# Test the presence of available built-in extensions that are not
# enabled by default.
#

test::utils::setupFixture "php-8.5/optional_builtin"

test::utils::compile
test::helpers::enter_prod

test::helpers::enabled_extensions "${optional_builtin_extensions_85[@]}"
}

7 changes: 7 additions & 0 deletions test/tests
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ source "$( pwd )/test/php81"
source "$( pwd )/test/php82"
source "$( pwd )/test/php83"
source "$( pwd )/test/php84"
source "$( pwd )/test/php85"
source "$( pwd )/test/php"
source "$( pwd )/test/composer"
source "$( pwd )/test/nginx"
Expand Down Expand Up @@ -42,6 +43,12 @@ suite_addTest test::php84::composer
suite_addTest test::php84::extensions::default
suite_addTest test::php84::extensions::optional_builtin

# PHP 8.5
suite_addTest test::php85::classic
suite_addTest test::php85::composer
suite_addTest test::php85::extensions::default
suite_addTest test::php85::extensions::optional_builtin

# PHP
suite_addTest test::php::composer_over_lower_classic
suite_addTest test::php::composer_over_higher_classic
Expand Down