Compare commits
6 Commits
e1109e925b
...
8c7e2782ae
| Author | SHA1 | Date | |
|---|---|---|---|
| 8c7e2782ae | |||
| 7bc7674021 | |||
| 3f02bee643 | |||
| e3306a096f | |||
| d66fce374c | |||
| 7e01886ad8 |
@@ -12,6 +12,8 @@ use PHPUnit\Framework\TestCase;
|
|||||||
*/
|
*/
|
||||||
final class CoreLibsAAASetupDataTest extends TestCase
|
final class CoreLibsAAASetupDataTest extends TestCase
|
||||||
{
|
{
|
||||||
|
public const TIME_ZONE = 'Asia/Tokyo';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Covers nothing
|
* Covers nothing
|
||||||
*
|
*
|
||||||
@@ -34,6 +36,9 @@ final class CoreLibsAAASetupDataTest extends TestCase
|
|||||||
BASE,
|
BASE,
|
||||||
'BASE Path set check'
|
'BASE Path set check'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// if time zone is not set, errors can happen
|
||||||
|
ini_set('date.timezone', self::TIME_ZONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -80,6 +80,7 @@ final class CoreLibsACLLoginTest extends TestCase
|
|||||||
'log_file_id' => 'CoreLibs-ACL-Login-Test',
|
'log_file_id' => 'CoreLibs-ACL-Login-Test',
|
||||||
]);
|
]);
|
||||||
// test database we need to connect do, if not possible this test is skipped
|
// test database we need to connect do, if not possible this test is skipped
|
||||||
|
try {
|
||||||
self::$db = new \CoreLibs\DB\IO(
|
self::$db = new \CoreLibs\DB\IO(
|
||||||
[
|
[
|
||||||
'db_name' => $db_name,
|
'db_name' => $db_name,
|
||||||
@@ -95,6 +96,11 @@ final class CoreLibsACLLoginTest extends TestCase
|
|||||||
],
|
],
|
||||||
self::$log
|
self::$log
|
||||||
);
|
);
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
self::markTestSkipped(
|
||||||
|
'Cannot connect to Test DB for ACL\Login test: ' . $e->getMessage()
|
||||||
|
);
|
||||||
|
}
|
||||||
// ALWAYS drop DB and RECREATE DB
|
// ALWAYS drop DB and RECREATE DB
|
||||||
// dropdb -U corelibs_acl_login_test -h localhost corelibs_acl_login_test
|
// dropdb -U corelibs_acl_login_test -h localhost corelibs_acl_login_test
|
||||||
// createdb -U corelibs_acl_login_test -O corelibs_acl_login_test -E utf8 corelibs_acl_login_test;
|
// createdb -U corelibs_acl_login_test -O corelibs_acl_login_test -E utf8 corelibs_acl_login_test;
|
||||||
|
|||||||
@@ -15,6 +15,12 @@ if [ ! -f "${load_sql}" ]; then
|
|||||||
echo 1;
|
echo 1;
|
||||||
exit 1;
|
exit 1;
|
||||||
fi;
|
fi;
|
||||||
|
# if we have no dropdb, createdb, psql, exit with 6
|
||||||
|
if ! command -v dropdb &> /dev/null || ! command -v createdb &> /dev/null || ! command -v psql &> /dev/null; then
|
||||||
|
echo 6;
|
||||||
|
exit 6;
|
||||||
|
fi;
|
||||||
|
|
||||||
db_user="${2}";
|
db_user="${2}";
|
||||||
db_name="${3}";
|
db_name="${3}";
|
||||||
db_host="${4}";
|
db_host="${4}";
|
||||||
@@ -24,25 +30,25 @@ if [ -z "${db_user}" ] || [ -z "${db_name}" ] || [ -z "${db_host}" ]; then
|
|||||||
exit 2;
|
exit 2;
|
||||||
fi;
|
fi;
|
||||||
# drop database, on error exit with 3
|
# drop database, on error exit with 3
|
||||||
dropdb -U ${db_user} -h ${db_host} ${db_name} 2>&1;
|
dropdb -U "${db_user}" -h "${db_host}" "${db_name}" 2>&1;
|
||||||
if [ $? -ne 0 ]; then
|
if [ ! $? ]; then
|
||||||
echo 3;
|
echo 3;
|
||||||
exit 3;
|
exit 3;
|
||||||
fi;
|
fi;
|
||||||
# create database, on error exit with 4
|
# create database, on error exit with 4
|
||||||
createdb -U ${db_user} -O ${db_user} -h ${db_host} -E utf8 ${db_name} 2>&1;
|
createdb -U "${db_user}" -O "${db_user}" -h "${db_host}" -E utf8 "${db_name}" 2>&1;
|
||||||
if [ $? -ne 0 ]; then
|
if [ ! $? ]; then
|
||||||
echo 4;
|
echo 4;
|
||||||
exit 4;
|
exit 4;
|
||||||
fi;
|
fi;
|
||||||
# if error 5 thrown, test with enabled below
|
# if error 5 thrown, test with enabled below
|
||||||
if [ ! -z "${5}" ]; then
|
if [ -n "${5}" ]; then
|
||||||
psql -U ${db_user} -h ${db_host} -f ${load_sql} ${db_name};
|
psql -U "${db_user}" -h "${db_host}" -f "${load_sql}" "${db_name}";
|
||||||
else
|
else
|
||||||
# load data (redirect ALL error to null), on error exit with 5
|
# load data (redirect ALL error to null), on error exit with 5
|
||||||
psql -U ${db_user} -h ${db_host} -f ${load_sql} ${db_name} 2>&1 1>/dev/null 2>/dev/null;
|
psql -U "${db_user}" -h "${db_host}" -f "${load_sql}" "${db_name}" 2>&1 1>/dev/null 2>/dev/null;
|
||||||
fi;
|
fi;
|
||||||
if [ $? -ne 0 ]; then
|
if [ ! $? ]; then
|
||||||
echo 5;
|
echo 5;
|
||||||
exit 5;
|
exit 5;
|
||||||
fi;
|
fi;
|
||||||
|
|||||||
@@ -1266,7 +1266,8 @@ final class CoreLibsCombinedArrayHandlerTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::arrayGetPrevKey, ::arrayGetNextKey
|
* @covers ::arrayGetPrevKey
|
||||||
|
* @covers ::arrayGetNextKey
|
||||||
* @dataProvider providerArrayGetNextPrevKey
|
* @dataProvider providerArrayGetNextPrevKey
|
||||||
* @testdox arrayGetNextPrevKey get next/prev key for $search wtih $expected_prev/$expected_next [$_dataName]
|
* @testdox arrayGetNextPrevKey get next/prev key for $search wtih $expected_prev/$expected_next [$_dataName]
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<?php
|
<?php // phpcs:disable Generic.Files.LineLength
|
||||||
|
|
||||||
declare(strict_types=1);
|
declare(strict_types=1);
|
||||||
|
|
||||||
@@ -71,15 +71,16 @@ final class CoreLibsCombinedDateTimeTest extends TestCase
|
|||||||
*
|
*
|
||||||
* @covers ::dateStringFormat
|
* @covers ::dateStringFormat
|
||||||
* @dataProvider timestampProvider
|
* @dataProvider timestampProvider
|
||||||
* @testdox dateStringFormat $input (microtime $flag) will be $expected [$_dataName]
|
* @testdox dateStringFormat $input (mt $flag_show_micro, float mt $flag_micro_as_float) will be $expected [$_dataName]
|
||||||
*
|
*
|
||||||
* @param int|float $input
|
* @param int|float $input
|
||||||
* @param bool $flag
|
* @param bool $flag_show_micro
|
||||||
|
* @param bool $flag_micro_as_float
|
||||||
* @param string $expected
|
* @param string $expected
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function testDateStringFormat(
|
public function testDateStringFormat(
|
||||||
$input,
|
int|float $input,
|
||||||
bool $flag_show_micro,
|
bool $flag_show_micro,
|
||||||
bool $flag_micro_as_float,
|
bool $flag_micro_as_float,
|
||||||
string $expected
|
string $expected
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
* @covers ::rgbToHwb
|
* @covers ::rgbToHwb
|
||||||
* @covers ::hsbToRgb
|
* @covers ::hsbToRgb
|
||||||
* @covers ::hslToRgb
|
* @covers ::hslToRgb
|
||||||
* @covers ::hwebToRgb
|
* @covers ::hwbToRgb
|
||||||
* @testdox Convert from and to RGB via HSL, HWB, HSB/V
|
* @testdox Convert from and to RGB via HSL, HWB, HSB/V
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -298,7 +298,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::returnAsHex()
|
|
||||||
* @testdox Convert from and to RGB via hex
|
* @testdox Convert from and to RGB via hex
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -342,8 +341,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* linear RGB conversion tests
|
* linear RGB conversion tests
|
||||||
*
|
*
|
||||||
* @covers ::fromLinear
|
|
||||||
* @covers ::toLinear
|
|
||||||
* @testdox Convert from and to RGB linear conversion check
|
* @testdox Convert from and to RGB linear conversion check
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -933,7 +930,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::__get
|
|
||||||
* @testdox Exception handling for RGB general calls
|
* @testdox Exception handling for RGB general calls
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -958,7 +954,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::setFromHex
|
|
||||||
* @testdox Exception handling for RGB setFromHex failues
|
* @testdox Exception handling for RGB setFromHex failues
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -1086,7 +1081,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::__get
|
|
||||||
* @testdox Exception handling for Lab general calls
|
* @testdox Exception handling for Lab general calls
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -1120,7 +1114,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::__get
|
|
||||||
* @testdox Exception handling for LCH general calls
|
* @testdox Exception handling for LCH general calls
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -1155,7 +1148,6 @@ final class CoreLibsConvertColorTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::__get
|
|
||||||
* @testdox Exception handling for XYZ general calls
|
* @testdox Exception handling for XYZ general calls
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
|
|||||||
@@ -671,7 +671,7 @@ final class CoreLibsConvertStringsTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::isValidRegexSimple
|
* @covers ::isValidRegex
|
||||||
* @dataProvider isValidRegexSimpleProvider
|
* @dataProvider isValidRegexSimpleProvider
|
||||||
* @testdox isValidRegexSimple make $input unqiue to $expected [$_dataName]
|
* @testdox isValidRegexSimple make $input unqiue to $expected [$_dataName]
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ final class CoreLibsCreateRandomKeyTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::randomKeyGeyn
|
* @covers ::randomKeyGen
|
||||||
* @dataProvider randomKeyGenProvider
|
* @dataProvider randomKeyGenProvider
|
||||||
* @testdox randomKeyGen use $input key length $expected [$_dataName]
|
* @testdox randomKeyGen use $input key length $expected [$_dataName]
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -78,7 +78,6 @@ final class CoreLibsCreateSessionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test session start
|
* Test session start
|
||||||
*
|
*
|
||||||
* @covers ::startSession
|
|
||||||
* @dataProvider sessionProvider
|
* @dataProvider sessionProvider
|
||||||
* @testdox startSession $input name for $type will be $expected (error: $expected_error) [$_dataName]
|
* @testdox startSession $input name for $type will be $expected (error: $expected_error) [$_dataName]
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -121,7 +121,6 @@ final class CoreLibsCreateUidsTest extends TestCase
|
|||||||
* must match 7e78fe0d-59b8-4637-af7f-e88d221a7d1e
|
* must match 7e78fe0d-59b8-4637-af7f-e88d221a7d1e
|
||||||
*
|
*
|
||||||
* @covers ::uuidv4
|
* @covers ::uuidv4
|
||||||
* @covers ::validateUuidv4
|
|
||||||
* @testdox uuidv4 check that return is matching regex [$_dataName]
|
* @testdox uuidv4 check that return is matching regex [$_dataName]
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
|
|||||||
@@ -123,10 +123,16 @@ final class CoreLibsDBIOTest extends TestCase
|
|||||||
'log_file_id' => 'CoreLibs-DB-IO-Test',
|
'log_file_id' => 'CoreLibs-DB-IO-Test',
|
||||||
]);
|
]);
|
||||||
// will be true, default logging is true
|
// will be true, default logging is true
|
||||||
|
try {
|
||||||
$db = new \CoreLibs\DB\IO(
|
$db = new \CoreLibs\DB\IO(
|
||||||
self::$db_config['valid'],
|
self::$db_config['valid'],
|
||||||
self::$log
|
self::$log
|
||||||
);
|
);
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
self::markTestSkipped(
|
||||||
|
'Cannot connect to Test DB for DB\IO test: ' . $e->getMessage()
|
||||||
|
);
|
||||||
|
}
|
||||||
if (!$db->dbGetConnectionStatus()) {
|
if (!$db->dbGetConnectionStatus()) {
|
||||||
self::markTestSkipped(
|
self::markTestSkipped(
|
||||||
'Cannot connect to valid Test DB for DB\IO test.'
|
'Cannot connect to valid Test DB for DB\IO test.'
|
||||||
@@ -543,8 +549,6 @@ final class CoreLibsDBIOTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test dbSetDbug, dbGetDebug
|
* Test dbSetDbug, dbGetDebug
|
||||||
*
|
*
|
||||||
* @covers ::dbGetDbug
|
|
||||||
* @covers ::dbSetDebug
|
|
||||||
* @testdox Set and Get Debug flag
|
* @testdox Set and Get Debug flag
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -3021,8 +3025,6 @@ final class CoreLibsDBIOTest extends TestCase
|
|||||||
* @covers ::dbReturnParams
|
* @covers ::dbReturnParams
|
||||||
* @covers ::dbCacheReset
|
* @covers ::dbCacheReset
|
||||||
* @covers ::dbGetCursorExt
|
* @covers ::dbGetCursorExt
|
||||||
* @covers ::dbCursorPos
|
|
||||||
* @covers ::dbCursorNumRows
|
|
||||||
* @dataProvider dbReturnProvider
|
* @dataProvider dbReturnProvider
|
||||||
* @testdox dbReturn Read First $read_first_only only and cache $flag_cache and assoc $flag_assoc with (Warning: $warning/Error: $error) [$_dataName]
|
* @testdox dbReturn Read First $read_first_only only and cache $flag_cache and assoc $flag_assoc with (Warning: $warning/Error: $error) [$_dataName]
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -13,29 +13,6 @@ use PHPUnit\Framework\TestCase;
|
|||||||
*/
|
*/
|
||||||
final class CoreLibsDebugFileWriterTest extends TestCase
|
final class CoreLibsDebugFileWriterTest extends TestCase
|
||||||
{
|
{
|
||||||
/**
|
|
||||||
* Undocumented function
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function fsetFolderProvider(): array
|
|
||||||
{
|
|
||||||
return [
|
|
||||||
'valid log folder name' => [
|
|
||||||
0 => '/tmp/',
|
|
||||||
1 => true,
|
|
||||||
],
|
|
||||||
'invalid log folder name' => [
|
|
||||||
0 => 'some name',
|
|
||||||
1 => false,
|
|
||||||
],
|
|
||||||
'not writeable log folder name' => [
|
|
||||||
0 => '/opt',
|
|
||||||
1 => false,
|
|
||||||
]
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
@@ -85,18 +62,59 @@ final class CoreLibsDebugFileWriterTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @dataProvider fsetFolderProvider
|
* @testdox fsetFolder test correct return code
|
||||||
* @testdox fsetFolder $input will match $expected [$_dataName]
|
|
||||||
*
|
*
|
||||||
* @param string $input
|
|
||||||
* @param boolean $expected
|
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function testFsetFolder(string $input, bool $expected): void
|
public function testFsetFolder(): void
|
||||||
{
|
{
|
||||||
|
// check the following
|
||||||
|
// - valid folder, writeable
|
||||||
|
// - valid folder, not writeable
|
||||||
|
// - invalid folder (eg file)
|
||||||
|
// - invalid folder name (eg contains spaces), must match ^[\w\-\/]+
|
||||||
|
|
||||||
|
// if we have no /tmp/ folder, we cannot test this, so skip the test
|
||||||
|
if (!is_dir('/tmp')) {
|
||||||
|
$this->markTestSkipped('No /tmp folder found, cannot test fsetFolder');
|
||||||
|
}
|
||||||
|
// TEST 3:
|
||||||
|
// create a file in /tmp/ to test invalid folder (eg file)
|
||||||
|
$test_file = '/tmp/somefile.txt';
|
||||||
|
if (!is_file($test_file)) {
|
||||||
|
touch($test_file);
|
||||||
|
}
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
$expected,
|
false,
|
||||||
\CoreLibs\Debug\FileWriter::fsetFolder($input)
|
\CoreLibs\Debug\FileWriter::fsetFolder($test_file)
|
||||||
|
);
|
||||||
|
// TEST 4:
|
||||||
|
// test invalid folder name (eg contains spaces), must match ^[\w\-\/]+
|
||||||
|
$this->assertEquals(
|
||||||
|
false,
|
||||||
|
\CoreLibs\Debug\FileWriter::fsetFolder('some name')
|
||||||
|
);
|
||||||
|
// TEST 1:
|
||||||
|
// create a folder in /tmp/ to test valid folder, writeable
|
||||||
|
$test_folder = '/tmp/somefolder';
|
||||||
|
if (!is_dir($test_folder)) {
|
||||||
|
mkdir($test_folder);
|
||||||
|
}
|
||||||
|
$this->assertEquals(
|
||||||
|
true,
|
||||||
|
\CoreLibs\Debug\FileWriter::fsetFolder($test_folder)
|
||||||
|
);
|
||||||
|
// TEST 2:
|
||||||
|
// create a folder in /tmp/ to test valid folder, not writeable
|
||||||
|
$test_folder = '/tmp/somefolder2';
|
||||||
|
if (!is_dir($test_folder)) {
|
||||||
|
mkdir($test_folder);
|
||||||
|
}
|
||||||
|
// remove all write permissions for the folder
|
||||||
|
chmod($test_folder, 0555);
|
||||||
|
$this->assertEquals(
|
||||||
|
false,
|
||||||
|
\CoreLibs\Debug\FileWriter::fsetFolder($test_folder)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,8 +48,8 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
* @dataProvider printTimeProvider
|
* @dataProvider printTimeProvider
|
||||||
* @testdox printTime test with $microtime and match to regex [$_dataName]
|
* @testdox printTime test with $microtime and match to regex [$_dataName]
|
||||||
*
|
*
|
||||||
* @param int|null $mircrotime
|
* @param ?int $microtime
|
||||||
* @param string $expected
|
* @param string $regex
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function testPrintTime(?int $microtime, string $regex): void
|
public function testPrintTime(?int $microtime, string $regex): void
|
||||||
@@ -460,10 +460,8 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @cover ::getCallerFileLine
|
* @cover ::getCallerFileLine
|
||||||
* @testWith ["vendor/phpunit/phpunit/src/Framework/TestCase.php:6434","phar:///home/clemens/.phive/phars/phpunit-9.6.13.phar/phpunit/Framework/TestCase.php:6434"]
|
|
||||||
* @testdox getCallerFileLine check based on regex .../Framework/TestCase.php:\d+ [$_dataName]
|
* @testdox getCallerFileLine check based on regex .../Framework/TestCase.php:\d+ [$_dataName]
|
||||||
*
|
*
|
||||||
* @param string $expected
|
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function testGetCallerFileLine(): void
|
public function testGetCallerFileLine(): void
|
||||||
@@ -471,15 +469,19 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
// regex prefix with path "/../" and then fixed vendor + \d+
|
// regex prefix with path "/../" and then fixed vendor + \d+
|
||||||
// or phar start if phiev installed
|
// or phar start if phiev installed
|
||||||
// phar:///home/clemens/.phive/phars/phpunit-9.6.13.phar/phpunit/Framework/TestCase.php
|
// phar:///home/clemens/.phive/phars/phpunit-9.6.13.phar/phpunit/Framework/TestCase.php
|
||||||
|
// phar:///usr/local/bin/phpunit/phpunit/Framework/TestCase.php
|
||||||
$regex = "/^("
|
$regex = "/^("
|
||||||
. "\/.*\/vendor\/phpunit\/phpunit\/src"
|
. "\/.*\/vendor\/phpunit\/phpunit\/src"
|
||||||
. "|"
|
. "|"
|
||||||
. "phar:\/\/\/.*\.phive\/phars\/phpunit-\d+\.\d+\.\d+\.phar\/phpunit"
|
. "phar:\/\/\/.*\.phive\/phars\/phpunit-\d+\.\d+\.\d+\.phar\/phpunit"
|
||||||
|
. "|"
|
||||||
|
. "phar:\/\/\/usr\/local\/bin\/phpunit\/phpunit"
|
||||||
. ")"
|
. ")"
|
||||||
. "\/Framework\/TestCase.php:\d+$/";
|
. "\/Framework\/TestCase.php:\d+$/";
|
||||||
$this->assertMatchesRegularExpression(
|
$this->assertMatchesRegularExpression(
|
||||||
$regex,
|
$regex,
|
||||||
Support::getCallerFileLine()
|
Support::getCallerFileLine(),
|
||||||
|
'Failed for: ' . Support::getCallerFileLine()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -522,7 +524,7 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
$expected,
|
$expected,
|
||||||
$compare,
|
$compare,
|
||||||
'assert expected 10'
|
'assert expected 10: ' . print_r($compare, true)
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
@@ -545,10 +547,20 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
$expected,
|
$expected,
|
||||||
$compare,
|
$compare,
|
||||||
'assert expected 11'
|
'assert expected 11: ' . print_r($compare, true)
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case 12:
|
case 12:
|
||||||
|
// if compare starts with "main"
|
||||||
|
if ($compare[0] == 'main') {
|
||||||
|
// add two more run after main
|
||||||
|
array_splice(
|
||||||
|
$expected,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
['run', 'run']
|
||||||
|
);
|
||||||
|
} else {
|
||||||
// add two "run" before "runBare"
|
// add two "run" before "runBare"
|
||||||
array_splice(
|
array_splice(
|
||||||
$expected,
|
$expected,
|
||||||
@@ -562,10 +574,11 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
0,
|
0,
|
||||||
['include']
|
['include']
|
||||||
);
|
);
|
||||||
|
}
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
$expected,
|
$expected,
|
||||||
$compare,
|
$compare,
|
||||||
'assert expected 12'
|
'assert expected 12: ' . print_r($compare, true)
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -589,7 +602,7 @@ final class CoreLibsDebugSupportTest extends TestCase
|
|||||||
if ($call_stack < 8) {
|
if ($call_stack < 8) {
|
||||||
$this->assertFalse(true, 'getCallStack too low: 8');
|
$this->assertFalse(true, 'getCallStack too low: 8');
|
||||||
} else {
|
} else {
|
||||||
$this->assertTrue(true, 'getCallSteck ok');
|
$this->assertTrue(true, 'getCallStack ok');
|
||||||
}
|
}
|
||||||
// just test top entry
|
// just test top entry
|
||||||
$first = array_shift($call_stack);
|
$first = array_shift($call_stack);
|
||||||
|
|||||||
@@ -442,7 +442,6 @@ final class CoreLibsLanguageL10nTest extends TestCase
|
|||||||
* init check and connected change translation
|
* init check and connected change translation
|
||||||
*
|
*
|
||||||
* @covers ::getTranslator
|
* @covers ::getTranslator
|
||||||
* @covers ::l10nReloadMOfile
|
|
||||||
* @dataProvider getTranslatorProvider
|
* @dataProvider getTranslatorProvider
|
||||||
* @testdox change locale from $locale and domain $domain to locale $locale_new and domain $domain_new [$_dataName]
|
* @testdox change locale from $locale and domain $domain to locale $locale_new and domain $domain_new [$_dataName]
|
||||||
*
|
*
|
||||||
@@ -639,7 +638,7 @@ final class CoreLibsLanguageL10nTest extends TestCase
|
|||||||
* plural and plural context
|
* plural and plural context
|
||||||
*
|
*
|
||||||
* @covers ::__n
|
* @covers ::__n
|
||||||
* @covers ::__pn
|
* @covers ::__np
|
||||||
* @dataProvider ngettextProvider
|
* @dataProvider ngettextProvider
|
||||||
* @testdox plural string test for locale $locale and domain $domain with $context [$_dataName]
|
* @testdox plural string test for locale $locale and domain $domain with $context [$_dataName]
|
||||||
*
|
*
|
||||||
@@ -865,6 +864,7 @@ final class CoreLibsLanguageL10nTest extends TestCase
|
|||||||
string $value,
|
string $value,
|
||||||
string $expected
|
string $expected
|
||||||
): void {
|
): void {
|
||||||
|
$old_value = null;
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
case 'global':
|
case 'global':
|
||||||
$GLOBALS[$var] = $value;
|
$GLOBALS[$var] = $value;
|
||||||
@@ -1101,11 +1101,11 @@ final class CoreLibsLanguageL10nTest extends TestCase
|
|||||||
* fuctions check
|
* fuctions check
|
||||||
* TODO: others d/dn/dp/dnp gettext functions
|
* TODO: others d/dn/dp/dnp gettext functions
|
||||||
*
|
*
|
||||||
* @covers __setlocale
|
* @covers _setlocale
|
||||||
* @covers __bindtextdomain
|
* @covers _bindtextdomain
|
||||||
* @covers __bind_textdomain_codeset
|
* @covers _bind_textdomain_codeset
|
||||||
* @covers __textdomain
|
* @covers _textdomain
|
||||||
* @covers __gettext
|
* @covers _gettext
|
||||||
* @covers __
|
* @covers __
|
||||||
* @dataProvider functionsProvider
|
* @dataProvider functionsProvider
|
||||||
* @testdox check functions with locale $locale and domain $domain [$_dataName]
|
* @testdox check functions with locale $locale and domain $domain [$_dataName]
|
||||||
|
|||||||
@@ -514,7 +514,6 @@ final class CoreLibsLoggingLoggingTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers Logger\Flag
|
|
||||||
* @testdox Logger\Flag enum test
|
* @testdox Logger\Flag enum test
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
@@ -828,6 +827,7 @@ final class CoreLibsLoggingLoggingTest extends TestCase
|
|||||||
// clean all data in folder first
|
// clean all data in folder first
|
||||||
array_map('unlink', glob($log->getLogFolder() . $log->getLogFileId() . '*.log'));
|
array_map('unlink', glob($log->getLogFolder() . $log->getLogFileId() . '*.log'));
|
||||||
|
|
||||||
|
$log_status = false;
|
||||||
switch ($level->value) {
|
switch ($level->value) {
|
||||||
case 200:
|
case 200:
|
||||||
$log_status = $log->info($message);
|
$log_status = $log->info($message);
|
||||||
@@ -851,7 +851,7 @@ final class CoreLibsLoggingLoggingTest extends TestCase
|
|||||||
$log_status = $log->emergency($message);
|
$log_status = $log->emergency($message);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$this->assertTrue($log_status, 'log write successful');
|
$this->assertTrue($log_status, 'log write unsuccessful for level: ' . $level->getName());
|
||||||
$file_content = file_get_contents(
|
$file_content = file_get_contents(
|
||||||
$log->getLogFolder() . $log->getLogFile()
|
$log->getLogFolder() . $log->getLogFile()
|
||||||
) ?: '';
|
) ?: '';
|
||||||
|
|||||||
@@ -334,7 +334,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -370,7 +369,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -397,7 +395,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -424,7 +421,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -469,7 +465,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test decryption with wrong key
|
* Test decryption with wrong key
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptFailed
|
* @dataProvider providerEncryptFailed
|
||||||
@@ -496,7 +491,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test decryption with wrong key
|
* Test decryption with wrong key
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptFailed
|
* @dataProvider providerEncryptFailed
|
||||||
@@ -521,7 +515,6 @@ final class CoreLibsSecurityAsymmetricAnonymousEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test decryption with wrong key
|
* Test decryption with wrong key
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptFailed
|
* @dataProvider providerEncryptFailed
|
||||||
|
|||||||
@@ -104,7 +104,6 @@ final class CoreLibsSecuritySymmetricEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -132,7 +131,6 @@ final class CoreLibsSecuritySymmetricEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -158,7 +156,6 @@ final class CoreLibsSecuritySymmetricEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* test encrypt/decrypt produce correct output
|
* test encrypt/decrypt produce correct output
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encryptKey
|
* @covers ::encryptKey
|
||||||
* @covers ::decryptKey
|
* @covers ::decryptKey
|
||||||
* @dataProvider providerEncryptDecryptSuccess
|
* @dataProvider providerEncryptDecryptSuccess
|
||||||
@@ -202,7 +199,6 @@ final class CoreLibsSecuritySymmetricEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test decryption with wrong key
|
* Test decryption with wrong key
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptFailed
|
* @dataProvider providerEncryptFailed
|
||||||
@@ -228,7 +224,6 @@ final class CoreLibsSecuritySymmetricEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test decryption with wrong key
|
* Test decryption with wrong key
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encrypt
|
* @covers ::encrypt
|
||||||
* @covers ::decrypt
|
* @covers ::decrypt
|
||||||
* @dataProvider providerEncryptFailed
|
* @dataProvider providerEncryptFailed
|
||||||
@@ -252,7 +247,6 @@ final class CoreLibsSecuritySymmetricEncryptionTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Test decryption with wrong key
|
* Test decryption with wrong key
|
||||||
*
|
*
|
||||||
* @covers ::generateRandomKey
|
|
||||||
* @covers ::encryptKey
|
* @covers ::encryptKey
|
||||||
* @covers ::decryptKey
|
* @covers ::decryptKey
|
||||||
* @dataProvider providerEncryptFailed
|
* @dataProvider providerEncryptFailed
|
||||||
|
|||||||
@@ -42,7 +42,6 @@ final class CoreLibsTemplateHtmlBuilderElementTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
* @covers ::Element
|
|
||||||
* @covers ::buildHtml
|
* @covers ::buildHtml
|
||||||
* @covers ::getTag
|
* @covers ::getTag
|
||||||
* @covers ::getId
|
* @covers ::getId
|
||||||
|
|||||||
@@ -58,6 +58,11 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
if ($handle === false) {
|
if ($handle === false) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
|
||||||
|
$status = curl_exec($handle);
|
||||||
|
if ($status === false) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
$this->url_basic = $url;
|
$this->url_basic = $url;
|
||||||
// print "Open: $url\n";
|
// print "Open: $url\n";
|
||||||
break;
|
break;
|
||||||
@@ -459,15 +464,14 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* set setup + header, base uri change
|
* set setup + header, base uri change
|
||||||
*
|
*
|
||||||
* @covers ::Curl
|
|
||||||
* @covers ::setBaseUri
|
* @covers ::setBaseUri
|
||||||
* @covers ::addHeader
|
* @covers ::setHeaders
|
||||||
* @covers ::removeHEader
|
* @covers ::removeHeaders
|
||||||
* @dataProvider providerUrlRequestsCurlSetup
|
* @dataProvider providerUrlRequestsCurlSetup
|
||||||
* @testdox UrlRequests\Curl Class setup tasks [$_dataName]
|
* @testdox UrlRequests\Curl Class setup tasks [$_dataName]
|
||||||
*
|
*
|
||||||
* @param null|array $config
|
* @param null|array $config
|
||||||
* @param array $expected
|
* @param array<string,mixed> $expected_set
|
||||||
* @param null|string $new_base_uri
|
* @param null|string $new_base_uri
|
||||||
* @param null|array $set_header
|
* @param null|array $set_header
|
||||||
* @param null|bool $set_header_add
|
* @param null|bool $set_header_add
|
||||||
@@ -492,10 +496,18 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
};
|
};
|
||||||
// if ($new_base_uri === null && $set_header === null && $remove_header === null) {
|
// if ($new_base_uri === null && $set_header === null && $remove_header === null) {
|
||||||
// }
|
// }
|
||||||
$this->assertEquals($expected_set, $curl->getConfig(), 'Class setup config mismatch');
|
$this->assertEquals(
|
||||||
|
$expected_set,
|
||||||
|
$curl->getConfig(),
|
||||||
|
'Class setup config mismatch'
|
||||||
|
);
|
||||||
if ($new_base_uri !== null) {
|
if ($new_base_uri !== null) {
|
||||||
$curl->setBaseUri($new_base_uri);
|
$curl->setBaseUri($new_base_uri);
|
||||||
$this->assertEquals($expected_change, $curl->getConfig(), 'new base_uri not matching');
|
$this->assertEquals(
|
||||||
|
$expected_change,
|
||||||
|
$curl->getConfig(),
|
||||||
|
'new base_uri not matching'
|
||||||
|
);
|
||||||
}
|
}
|
||||||
if ($set_header !== null) {
|
if ($set_header !== null) {
|
||||||
if ($set_header_add !== null) {
|
if ($set_header_add !== null) {
|
||||||
@@ -503,11 +515,19 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
} else {
|
} else {
|
||||||
$curl->setHeaders($set_header);
|
$curl->setHeaders($set_header);
|
||||||
}
|
}
|
||||||
$this->assertEquals($expected_change, $curl->getConfig(), 'new headers not matching');
|
$this->assertEquals(
|
||||||
|
$expected_change,
|
||||||
|
$curl->getConfig(),
|
||||||
|
'new headers not matching'
|
||||||
|
);
|
||||||
}
|
}
|
||||||
if ($remove_header !== null) {
|
if ($remove_header !== null) {
|
||||||
$curl->removeHeaders($remove_header);
|
$curl->removeHeaders($remove_header);
|
||||||
$this->assertEquals($expected_change, $curl->getConfig(), 'removed headers not matching');
|
$this->assertEquals(
|
||||||
|
$expected_change,
|
||||||
|
$curl->getConfig(),
|
||||||
|
'removed headers not matching'
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -877,7 +897,7 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
string $return_content
|
string $return_content
|
||||||
) {
|
) {
|
||||||
if (!$this->url_basic) {
|
if (!$this->url_basic) {
|
||||||
$this->markTestSkipped('No backend interface setup for testing: GET');
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
}
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl();
|
$curl = new \CoreLibs\UrlRequests\Curl();
|
||||||
// options
|
// options
|
||||||
@@ -960,6 +980,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testUrlRequestsCurlRequestMultiple()
|
public function testUrlRequestsCurlRequestMultiple()
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl();
|
$curl = new \CoreLibs\UrlRequests\Curl();
|
||||||
// get
|
// get
|
||||||
$response = $curl->get($this->url_basic, [
|
$response = $curl->get($this->url_basic, [
|
||||||
@@ -1051,6 +1074,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testUrlRequestsCurlAuthHeader()
|
public function testUrlRequestsCurlAuthHeader()
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl([
|
$curl = new \CoreLibs\UrlRequests\Curl([
|
||||||
"auth" => ["user", "pass", "basic"],
|
"auth" => ["user", "pass", "basic"],
|
||||||
"http_errors" => false,
|
"http_errors" => false,
|
||||||
@@ -1117,6 +1143,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testExceptionInvalidHeaderKey(): void
|
public function testExceptionInvalidHeaderKey(): void
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl();
|
$curl = new \CoreLibs\UrlRequests\Curl();
|
||||||
$this->expectException(\RuntimeException::class);
|
$this->expectException(\RuntimeException::class);
|
||||||
$this->expectExceptionMessageMatches("/InvalidHeaderKey/");
|
$this->expectExceptionMessageMatches("/InvalidHeaderKey/");
|
||||||
@@ -1137,6 +1166,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testExceptionInvalidHeaderValue(): void
|
public function testExceptionInvalidHeaderValue(): void
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl();
|
$curl = new \CoreLibs\UrlRequests\Curl();
|
||||||
$this->expectException(\RuntimeException::class);
|
$this->expectException(\RuntimeException::class);
|
||||||
$this->expectExceptionMessageMatches("/InvalidHeaderValue/");
|
$this->expectExceptionMessageMatches("/InvalidHeaderValue/");
|
||||||
@@ -1186,6 +1218,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testExceptionBadRequest(): void
|
public function testExceptionBadRequest(): void
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl(["http_errors" => true]);
|
$curl = new \CoreLibs\UrlRequests\Curl(["http_errors" => true]);
|
||||||
$this->expectException(\RuntimeException::class);
|
$this->expectException(\RuntimeException::class);
|
||||||
$this->expectExceptionMessageMatches("/ClientError/");
|
$this->expectExceptionMessageMatches("/ClientError/");
|
||||||
@@ -1207,6 +1242,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testExceptionBadRequestEnable(): void
|
public function testExceptionBadRequestEnable(): void
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl(["http_errors" => false]);
|
$curl = new \CoreLibs\UrlRequests\Curl(["http_errors" => false]);
|
||||||
$this->expectException(\RuntimeException::class);
|
$this->expectException(\RuntimeException::class);
|
||||||
$this->expectExceptionMessageMatches("/ClientError/");
|
$this->expectExceptionMessageMatches("/ClientError/");
|
||||||
@@ -1229,6 +1267,9 @@ final class CoreLibsUrlRequestsCurlTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testExceptionBadRequestUnset(): void
|
public function testExceptionBadRequestUnset(): void
|
||||||
{
|
{
|
||||||
|
if (!$this->url_basic) {
|
||||||
|
$this->markTestSkipped('No backend interface setup for testing');
|
||||||
|
}
|
||||||
// if true, with false it has to be off
|
// if true, with false it has to be off
|
||||||
$curl = new \CoreLibs\UrlRequests\Curl(["http_errors" => true]);
|
$curl = new \CoreLibs\UrlRequests\Curl(["http_errors" => true]);
|
||||||
$response = $curl->request('get', $this->url_basic, [
|
$response = $curl->request('get', $this->url_basic, [
|
||||||
|
|||||||
@@ -536,7 +536,7 @@ class PgSQL implements Interface\SqlFunctions
|
|||||||
$connection_string[] = 'sslmode=' . $db_ssl;
|
$connection_string[] = 'sslmode=' . $db_ssl;
|
||||||
}
|
}
|
||||||
// connect
|
// connect
|
||||||
$this->dbh = pg_connect(join(' ', $connection_string));
|
$this->dbh = @pg_connect(join(' ', $connection_string));
|
||||||
return $this->dbh;
|
return $this->dbh;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -32,11 +32,11 @@ class FileWriter
|
|||||||
if (!is_writeable($folder)) {
|
if (!is_writeable($folder)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
// if last is not / then add
|
if (!is_dir($folder)) {
|
||||||
if (substr($folder, -1, 1) != DIRECTORY_SEPARATOR) {
|
return false;
|
||||||
$folder .= DIRECTORY_SEPARATOR;
|
|
||||||
}
|
}
|
||||||
self::$debug_folder = $folder;
|
// if last is not / then add
|
||||||
|
self::$debug_folder = rtrim($folder, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user