summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/sodium/tests/bug78114.phpt6
-rw-r--r--ext/sodium/tests/bug78516.phpt3
-rw-r--r--ext/sodium/tests/crypto_aead.phpt3
-rw-r--r--ext/sodium/tests/crypto_auth.phpt4
-rw-r--r--ext/sodium/tests/crypto_box.phpt4
-rw-r--r--ext/sodium/tests/crypto_generichash.phpt4
-rw-r--r--ext/sodium/tests/crypto_hex.phpt4
-rw-r--r--ext/sodium/tests/crypto_kdf.phpt4
-rw-r--r--ext/sodium/tests/crypto_kx.phpt4
-rw-r--r--ext/sodium/tests/crypto_scalarmult.phpt4
-rw-r--r--ext/sodium/tests/crypto_secretbox.phpt4
-rw-r--r--ext/sodium/tests/crypto_secretstream.phpt3
-rw-r--r--ext/sodium/tests/crypto_shorthash.phpt4
-rw-r--r--ext/sodium/tests/crypto_sign.phpt4
-rw-r--r--ext/sodium/tests/crypto_stream.phpt4
-rw-r--r--ext/sodium/tests/exception_trace_without_args.phpt4
-rw-r--r--ext/sodium/tests/inc_add.phpt4
-rw-r--r--ext/sodium/tests/installed.phpt4
-rw-r--r--ext/sodium/tests/pwhash_argon2i.phpt4
-rw-r--r--ext/sodium/tests/pwhash_scrypt.phpt4
-rw-r--r--ext/sodium/tests/sodium_error_001.phpt4
-rw-r--r--ext/sodium/tests/utils.phpt4
-rw-r--r--ext/sodium/tests/version.phpt4
-rwxr-xr-xrun-tests.php15
-rw-r--r--tests/run-test/bug75042-2.phpt10
-rw-r--r--tests/run-test/bug75042-3.phpt13
-rw-r--r--tests/run-test/extensions-shared.phpt (renamed from tests/run-test/bug75042.phpt)7
-rw-r--r--tests/run-test/extensions-static.phpt9
28 files changed, 74 insertions, 71 deletions
diff --git a/ext/sodium/tests/bug78114.phpt b/ext/sodium/tests/bug78114.phpt
index 6d7df4348f..b988c09ec2 100644
--- a/ext/sodium/tests/bug78114.phpt
+++ b/ext/sodium/tests/bug78114.phpt
@@ -1,9 +1,7 @@
--TEST--
Bug #78114 (segfault when calling sodium_* functions from eval)
---SKIPIF--
-<?php
-if (!extension_loaded('sodium')) die('skip sodium extension not available');
-?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
try {
diff --git a/ext/sodium/tests/bug78516.phpt b/ext/sodium/tests/bug78516.phpt
index 0347d33273..90852a6967 100644
--- a/ext/sodium/tests/bug78516.phpt
+++ b/ext/sodium/tests/bug78516.phpt
@@ -1,8 +1,9 @@
--TEST--
Bug #78516 (password_hash(): Memory cost is not in allowed range)
+--EXTENSIONS--
+sodium
--SKIPIF--
<?php
-if (!extension_loaded('sodium')) die('skip sodium extension not available');
if (!defined('PASSWORD_ARGON2ID')) die('skip PASSWORD_ARGON2ID not available');
?>
--FILE--
diff --git a/ext/sodium/tests/crypto_aead.phpt b/ext/sodium/tests/crypto_aead.phpt
index a54a1c7dc6..0da84194bb 100644
--- a/ext/sodium/tests/crypto_aead.phpt
+++ b/ext/sodium/tests/crypto_aead.phpt
@@ -1,8 +1,9 @@
--TEST--
Check for libsodium AEAD
+--EXTENSIONS--
+sodium
--SKIPIF--
<?php
-if (!extension_loaded("sodium")) print "skip extension not loaded";
if (!defined('SODIUM_CRYPTO_AEAD_AES256GCM_NPUBBYTES')) print "skip libsodium without AESGCM";
?>
--FILE--
diff --git a/ext/sodium/tests/crypto_auth.phpt b/ext/sodium/tests/crypto_auth.phpt
index 58d8350078..8f262414be 100644
--- a/ext/sodium/tests/crypto_auth.phpt
+++ b/ext/sodium/tests/crypto_auth.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium auth
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$msg = random_bytes(1000);
diff --git a/ext/sodium/tests/crypto_box.phpt b/ext/sodium/tests/crypto_box.phpt
index 3a55717d53..f77ec1601c 100644
--- a/ext/sodium/tests/crypto_box.phpt
+++ b/ext/sodium/tests/crypto_box.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium box
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$keypair = sodium_crypto_box_keypair();
diff --git a/ext/sodium/tests/crypto_generichash.phpt b/ext/sodium/tests/crypto_generichash.phpt
index 5a7b0c4285..58f519af5c 100644
--- a/ext/sodium/tests/crypto_generichash.phpt
+++ b/ext/sodium/tests/crypto_generichash.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium generichash
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$q = sodium_crypto_generichash('msg');
diff --git a/ext/sodium/tests/crypto_hex.phpt b/ext/sodium/tests/crypto_hex.phpt
index 0f872ee867..3f989a1f11 100644
--- a/ext/sodium/tests/crypto_hex.phpt
+++ b/ext/sodium/tests/crypto_hex.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium bin2hex
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$bin = random_bytes(random_int(1, 1000));
diff --git a/ext/sodium/tests/crypto_kdf.phpt b/ext/sodium/tests/crypto_kdf.phpt
index c9f0949ed0..970a87988d 100644
--- a/ext/sodium/tests/crypto_kdf.phpt
+++ b/ext/sodium/tests/crypto_kdf.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium KDF
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$key = sodium_crypto_kdf_keygen();
diff --git a/ext/sodium/tests/crypto_kx.phpt b/ext/sodium/tests/crypto_kx.phpt
index a1dd00a0a7..5a278f685b 100644
--- a/ext/sodium/tests/crypto_kx.phpt
+++ b/ext/sodium/tests/crypto_kx.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium-based key exchange
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$client_seed = sodium_hex2bin('0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef');
diff --git a/ext/sodium/tests/crypto_scalarmult.phpt b/ext/sodium/tests/crypto_scalarmult.phpt
index 2636963e32..8dda46c99e 100644
--- a/ext/sodium/tests/crypto_scalarmult.phpt
+++ b/ext/sodium/tests/crypto_scalarmult.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium scalarmult
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$n = sodium_hex2bin("5dab087e624a8a4b79e17f8b83800ee66f3bb1292618b6fd1c2f8b27ff88e0eb");
diff --git a/ext/sodium/tests/crypto_secretbox.phpt b/ext/sodium/tests/crypto_secretbox.phpt
index b9d4d1ccfe..075b0c60e3 100644
--- a/ext/sodium/tests/crypto_secretbox.phpt
+++ b/ext/sodium/tests/crypto_secretbox.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium secretbox
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$nonce = random_bytes(SODIUM_CRYPTO_SECRETBOX_NONCEBYTES);
diff --git a/ext/sodium/tests/crypto_secretstream.phpt b/ext/sodium/tests/crypto_secretstream.phpt
index 24896e15b2..1267ecd8af 100644
--- a/ext/sodium/tests/crypto_secretstream.phpt
+++ b/ext/sodium/tests/crypto_secretstream.phpt
@@ -1,8 +1,9 @@
--TEST--
Check for libsodium secretstream
+--EXTENSIONS--
+sodium
--SKIPIF--
<?php
-if (!extension_loaded("sodium")) print "skip extension not loaded";
if (!defined('SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_ABYTES')) print "skip libsodium without secretbytes";
?>
--FILE--
diff --git a/ext/sodium/tests/crypto_shorthash.phpt b/ext/sodium/tests/crypto_shorthash.phpt
index 68bffc823b..c5cc2334a6 100644
--- a/ext/sodium/tests/crypto_shorthash.phpt
+++ b/ext/sodium/tests/crypto_shorthash.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium shorthash
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$m1 = 'message';
diff --git a/ext/sodium/tests/crypto_sign.phpt b/ext/sodium/tests/crypto_sign.phpt
index 14e0c49e91..e1a2343a20 100644
--- a/ext/sodium/tests/crypto_sign.phpt
+++ b/ext/sodium/tests/crypto_sign.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium ed25519 signatures
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$keypair = sodium_crypto_sign_keypair();
diff --git a/ext/sodium/tests/crypto_stream.phpt b/ext/sodium/tests/crypto_stream.phpt
index 27e163c071..46f174e15b 100644
--- a/ext/sodium/tests/crypto_stream.phpt
+++ b/ext/sodium/tests/crypto_stream.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium stream
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$nonce = random_bytes(SODIUM_CRYPTO_STREAM_NONCEBYTES);
diff --git a/ext/sodium/tests/exception_trace_without_args.phpt b/ext/sodium/tests/exception_trace_without_args.phpt
index 4885f93093..aa39d5610f 100644
--- a/ext/sodium/tests/exception_trace_without_args.phpt
+++ b/ext/sodium/tests/exception_trace_without_args.phpt
@@ -1,7 +1,7 @@
--TEST--
SodiumException backtraces do not contain function arguments
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
diff --git a/ext/sodium/tests/inc_add.phpt b/ext/sodium/tests/inc_add.phpt
index 23410d140c..7652cf851e 100644
--- a/ext/sodium/tests/inc_add.phpt
+++ b/ext/sodium/tests/inc_add.phpt
@@ -1,7 +1,7 @@
--TEST--
increment and add edge cases
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
diff --git a/ext/sodium/tests/installed.phpt b/ext/sodium/tests/installed.phpt
index f004efa714..e2c3b73037 100644
--- a/ext/sodium/tests/installed.phpt
+++ b/ext/sodium/tests/installed.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for sodium presence
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
echo "sodium extension is available";
diff --git a/ext/sodium/tests/pwhash_argon2i.phpt b/ext/sodium/tests/pwhash_argon2i.phpt
index aee90bd6fa..90f7730419 100644
--- a/ext/sodium/tests/pwhash_argon2i.phpt
+++ b/ext/sodium/tests/pwhash_argon2i.phpt
@@ -1,7 +1,9 @@
--TEST--
Check for libsodium argon2i
+--EXTENSIONS--
+sodium
--SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip";
+<?php
if (!defined('SODIUM_CRYPTO_PWHASH_SALTBYTES')) print "skip libsodium without argon2i"; ?>
--FILE--
<?php
diff --git a/ext/sodium/tests/pwhash_scrypt.phpt b/ext/sodium/tests/pwhash_scrypt.phpt
index 8e02f7ba0e..59b5647a91 100644
--- a/ext/sodium/tests/pwhash_scrypt.phpt
+++ b/ext/sodium/tests/pwhash_scrypt.phpt
@@ -1,7 +1,9 @@
--TEST--
Check for libsodium scrypt
+--EXTENSIONS--
+sodium
--SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip";
+<?php
if (!defined('SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_SALTBYTES')) print "skip libsodium without scrypt"; ?>
--FILE--
<?php
diff --git a/ext/sodium/tests/sodium_error_001.phpt b/ext/sodium/tests/sodium_error_001.phpt
index a78d071a10..b290ebd8a5 100644
--- a/ext/sodium/tests/sodium_error_001.phpt
+++ b/ext/sodium/tests/sodium_error_001.phpt
@@ -1,7 +1,7 @@
--TEST--
TypeErrors will not contain param values in backtrace
---SKIPIF--
-<?php if (!extension_loaded("sodium")) die("skip ext/sodium required"); ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
declare(strict_types=1);
diff --git a/ext/sodium/tests/utils.phpt b/ext/sodium/tests/utils.phpt
index 944a25ca22..66969a60bd 100644
--- a/ext/sodium/tests/utils.phpt
+++ b/ext/sodium/tests/utils.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium utils
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
$a = 'test';
diff --git a/ext/sodium/tests/version.phpt b/ext/sodium/tests/version.phpt
index e9495d7a44..2c8b3a108e 100644
--- a/ext/sodium/tests/version.phpt
+++ b/ext/sodium/tests/version.phpt
@@ -1,7 +1,7 @@
--TEST--
Check for libsodium version
---SKIPIF--
-<?php if (!extension_loaded("sodium")) print "skip"; ?>
+--EXTENSIONS--
+sodium
--FILE--
<?php
echo strlen(SODIUM_LIBRARY_VERSION) >= 5;
diff --git a/run-tests.php b/run-tests.php
index 825718407c..ad1311bb8d 100755
--- a/run-tests.php
+++ b/run-tests.php
@@ -2057,15 +2057,26 @@ TEST $file
$extensions = preg_split("/[\n\r]+/", trim($test->getSection('EXTENSIONS')));
[$ext_dir, $loaded] = $skipCache->getExtensions("$php $pass_options $extra_options $ext_params $no_file_cache");
$ext_prefix = IS_WINDOWS ? "php_" : "";
+ $missing = [];
foreach ($extensions as $req_ext) {
if (!in_array($req_ext, $loaded)) {
if ($req_ext == 'opcache') {
- $ini_settings['zend_extension'][] = $ext_dir . DIRECTORY_SEPARATOR . $ext_prefix . $req_ext . '.' . PHP_SHLIB_SUFFIX;
+ $ext_file = $ext_dir . DIRECTORY_SEPARATOR . $ext_prefix . $req_ext . '.' . PHP_SHLIB_SUFFIX;
+ $ini_settings['zend_extension'][] = $ext_file;
} else {
- $ini_settings['extension'][] = $ext_dir . DIRECTORY_SEPARATOR . $ext_prefix . $req_ext . '.' . PHP_SHLIB_SUFFIX;
+ $ext_file = $ext_dir . DIRECTORY_SEPARATOR . $ext_prefix . $req_ext . '.' . PHP_SHLIB_SUFFIX;
+ $ini_settings['extension'][] = $ext_file;
+ }
+ if (!is_readable($ext_file)) {
+ $missing[] = $req_ext;
}
}
}
+ if ($missing) {
+ $message = 'Required extension' . (count($missing) > 1 ? 's' : '')
+ . ' missing: ' . implode(', ', $missing);
+ return skip_test($tested, $tested_file, $shortname, $message);
+ }
}
// additional ini overwrites
diff --git a/tests/run-test/bug75042-2.phpt b/tests/run-test/bug75042-2.phpt
deleted file mode 100644
index 2c5718a9a0..0000000000
--- a/tests/run-test/bug75042-2.phpt
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-phpt EXTENSIONS directive with static module
---EXTENSIONS--
-SPL
---FILE--
-<?php
-var_dump(extension_loaded('spl'));
-?>
---EXPECT--
-bool(true)
diff --git a/tests/run-test/bug75042-3.phpt b/tests/run-test/bug75042-3.phpt
deleted file mode 100644
index 5a30143be9..0000000000
--- a/tests/run-test/bug75042-3.phpt
+++ /dev/null
@@ -1,13 +0,0 @@
---TEST--
-phpt EXTENSIONS directive with nonexistent shared module
---INI--
-error_log=
-display_startup_errors=1
-display_errors=1
---EXTENSIONS--
-nonexistentsharedmodule
---FILE--
-<?php
-?>
---EXPECTF--
-Warning: PHP Startup: Unable to load dynamic library '%snonexistentsharedmodule.%s' %A
diff --git a/tests/run-test/bug75042.phpt b/tests/run-test/extensions-shared.phpt
index a7979d6b5e..e8d9b52aa9 100644
--- a/tests/run-test/bug75042.phpt
+++ b/tests/run-test/extensions-shared.phpt
@@ -1,5 +1,7 @@
--TEST--
-phpt EXTENSIONS directive with shared module
+phpt EXTENSIONS directive - shared module
+--EXTENSIONS--
+openssl
--SKIPIF--
<?php
$php = getenv('TEST_PHP_EXECUTABLE');
@@ -8,8 +10,7 @@ if (false !== stripos(`$php -n -m`, 'openssl')) {
}
$ext_module = ini_get('extension_dir') . DIRECTORY_SEPARATOR . (substr(PHP_OS, 0, 3) === "WIN" ? "php_openssl." : "openssl.") . PHP_SHLIB_SUFFIX;
if( !file_exists($ext_module) ) die('skip openssl shared extension not found');
---EXTENSIONS--
-openssl
+
--FILE--
<?php
var_dump(extension_loaded('openssl'));
diff --git a/tests/run-test/extensions-static.phpt b/tests/run-test/extensions-static.phpt
new file mode 100644
index 0000000000..19e883e0ba
--- /dev/null
+++ b/tests/run-test/extensions-static.phpt
@@ -0,0 +1,9 @@
+--TEST--
+phpt EXTENSIONS directive - static extension is present
+--EXTENSIONS--
+standard
+--FILE--
+<?php
+var_dump(extension_loaded('standard'));
+--EXPECT--
+bool(true)