From 96ac1d9dff0e7224c383fec83e442ccadeba2e93 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Fri, 19 May 2023 14:45:32 +0000 Subject: [PATCH] fix ftp port and code content --- tests/Security/encrytped.txt | 2 +- tests/System/File/Ftp/DirectoryTest.php | 12 ++++++------ tests/System/File/Ftp/FileTest.php | 12 ++++++------ tests/System/File/Ftp/FtpStorageTest.php | 12 ++++++------ tests/Utils/Barcode/qr.jpg | Bin 13041 -> 13431 bytes tests/Utils/Barcode/qr.png | Bin 402 -> 400 bytes 6 files changed, 19 insertions(+), 19 deletions(-) diff --git a/tests/Security/encrytped.txt b/tests/Security/encrytped.txt index ad66a64a7..e857101ec 100644 --- a/tests/Security/encrytped.txt +++ b/tests/Security/encrytped.txt @@ -1 +1 @@ -k 'M㧄F&Aj4{,e=uQ[G#HX \ No newline at end of file ++W ??f#WʍVݲA  =Q8T##de:{_Ӥ= \ No newline at end of file diff --git a/tests/System/File/Ftp/DirectoryTest.php b/tests/System/File/Ftp/DirectoryTest.php index 3c6625e84..13c7fed8c 100755 --- a/tests/System/File/Ftp/DirectoryTest.php +++ b/tests/System/File/Ftp/DirectoryTest.php @@ -24,7 +24,7 @@ use phpOMS\Uri\HttpUri; */ final class DirectoryTest extends \PHPUnit\Framework\TestCase { - public const BASE = 'ftp://test:123456@127.0.0.1:20'; + public const BASE = 'ftp://test:123456@127.0.0.1:21'; private static $con = null; @@ -39,17 +39,17 @@ final class DirectoryTest extends \PHPUnit\Framework\TestCase } try { - $mkdir = \ftp_mkdir(self::$con, '0xFF'); - \ftp_rmdir(self::$con, '0xFF'); + $mkdir = \ftp_mkdir(self::$con, __DIR__ . '/0xFF'); + \ftp_rmdir(self::$con, __DIR__ . '/0xFF'); $f = \fopen('php://memory', 'r+'); - \fwrite($f, '0x00'); + \fwrite($f, __DIR__ . '/0x00'); \rewind($f); - $put = \ftp_fput(self::$con, '0x00', $f); + $put = \ftp_fput(self::$con, __DIR__ . '/0x00', $f); \fclose($f); - \ftp_delete(self::$con, '0x00'); + \ftp_delete(self::$con, __DIR__ . '/0x00'); if (!$mkdir || !$put) { throw new \Exception(); diff --git a/tests/System/File/Ftp/FileTest.php b/tests/System/File/Ftp/FileTest.php index 4472dd54c..892b06c7d 100755 --- a/tests/System/File/Ftp/FileTest.php +++ b/tests/System/File/Ftp/FileTest.php @@ -26,7 +26,7 @@ use phpOMS\Uri\HttpUri; */ final class FileTest extends \PHPUnit\Framework\TestCase { - public const BASE = 'ftp://test:123456@127.0.0.1:20'; + public const BASE = 'ftp://test:123456@127.0.0.1:21'; private static $con = null; @@ -41,17 +41,17 @@ final class FileTest extends \PHPUnit\Framework\TestCase } try { - $mkdir = \ftp_mkdir(self::$con, '0xFF'); - \ftp_rmdir(self::$con, '0xFF'); + $mkdir = \ftp_mkdir(self::$con, __DIR__ . '/0xFF'); + \ftp_rmdir(self::$con, __DIR__ . '/0xFF'); $f = \fopen('php://memory', 'r+'); - \fwrite($f, '0x00'); + \fwrite($f, __DIR__ . '/0x00'); \rewind($f); - $put = \ftp_fput(self::$con, '0x00', $f); + $put = \ftp_fput(self::$con, __DIR__ . '/0x00', $f); \fclose($f); - \ftp_delete(self::$con, '0x00'); + \ftp_delete(self::$con, __DIR__ . '/0x00'); if (!$mkdir || !$put) { throw new \Exception(); diff --git a/tests/System/File/Ftp/FtpStorageTest.php b/tests/System/File/Ftp/FtpStorageTest.php index ef131de88..79f93b7bf 100755 --- a/tests/System/File/Ftp/FtpStorageTest.php +++ b/tests/System/File/Ftp/FtpStorageTest.php @@ -27,7 +27,7 @@ use phpOMS\Uri\HttpUri; */ final class FtpStorageTest extends \PHPUnit\Framework\TestCase { - public const BASE = 'ftp://test:123456@127.0.0.1:20'; + public const BASE = 'ftp://test:123456@127.0.0.1:21'; private static $con = null; @@ -42,17 +42,17 @@ final class FtpStorageTest extends \PHPUnit\Framework\TestCase } try { - $mkdir = \ftp_mkdir(self::$con, '0xFF'); - \ftp_rmdir(self::$con, '0xFF'); + $mkdir = \ftp_mkdir(self::$con, __DIR__ . '/0xFF'); + \ftp_rmdir(self::$con, __DIR__ . '/0xFF'); $f = \fopen('php://memory', 'r+'); - \fwrite($f, '0x00'); + \fwrite($f, __DIR__ . '/0x00'); \rewind($f); - $put = \ftp_fput(self::$con, '0x00', $f); + $put = \ftp_fput(self::$con, __DIR__ . '/0x00', $f); \fclose($f); - \ftp_delete(self::$con, '0x00'); + \ftp_delete(self::$con, __DIR__ . '/0x00'); if (!$mkdir || !$put) { throw new \Exception(); diff --git a/tests/Utils/Barcode/qr.jpg b/tests/Utils/Barcode/qr.jpg index 1b30d6089fa045d0a81f512a5af3228619c8a426..b0909dcdd8c8b81631d9c334a2776d9f15c895d0 100644 GIT binary patch literal 13431 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 literal 13041 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 gZkW3zU*hM;1A-no5_ zsyd1j+nI=UKO+kXbnj@B`Aa4OczZ{eL__88k%{dzqB?067K#SkyhC}?6}&o>F-T^; zFR*qfeunLf)k$-UH&lx^ iD(rt@Nb;fn9C-o`+2wcuRNVjo0000