diff --git a/.travis.yml b/.travis.yml index 339ec5a1..8ef7cae6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,7 @@ php: - 7.2 - 7.3 - 7.4 + - 8.0 - nightly before_install: true @@ -20,7 +21,7 @@ matrix: install: - wget http://ftp.gnu.org/gnu/parallel/parallel-20170822.tar.bz2 - tar -xvjf parallel* - - cd parallel* + - cd parallel-20170822 - ./configure - make - sudo make install diff --git a/build/code-sniffer-ruleset-tests.xml b/build/code-sniffer-ruleset-tests.xml index 7169012e..17f00d1d 100644 --- a/build/code-sniffer-ruleset-tests.xml +++ b/build/code-sniffer-ruleset-tests.xml @@ -11,6 +11,7 @@ using underscore. --> + diff --git a/composer.json b/composer.json index 3212508a..887639d1 100644 --- a/composer.json +++ b/composer.json @@ -57,7 +57,7 @@ }, "require-dev": { "phing/phing": "~2.7", - "phpunit/phpunit": "^4.8.35|^5.7|^6.0", + "phpunit/phpunit": "^4.8.35|^5.7|^6.0|^9.4", "squizlabs/php_codesniffer": "~2.0" }, "suggest": { diff --git a/phpseclib/File/ANSI.php b/phpseclib/File/ANSI.php index e124f855..f0dc1961 100644 --- a/phpseclib/File/ANSI.php +++ b/phpseclib/File/ANSI.php @@ -315,19 +315,20 @@ class ANSI $mods = explode(';', $match[1]); foreach ($mods as $mod) { switch ($mod) { - case 0: // Turn off character attributes + case '': + case '0': // Turn off character attributes $attr_cell = clone $this->base_attr_cell; break; - case 1: // Turn bold mode on + case '1': // Turn bold mode on $attr_cell->bold = true; break; - case 4: // Turn underline mode on + case '4': // Turn underline mode on $attr_cell->underline = true; break; - case 5: // Turn blinking mode on + case '5': // Turn blinking mode on $attr_cell->blink = true; break; - case 7: // Turn reverse video on + case '7': // Turn reverse video on $attr_cell->reverse = !$attr_cell->reverse; $temp = $attr_cell->background; $attr_cell->background = $attr_cell->foreground; @@ -340,23 +341,23 @@ class ANSI $back = &$attr_cell->{ $attr_cell->reverse ? 'foreground' : 'background' }; switch ($mod) { // @codingStandardsIgnoreStart - case 30: $front = 'black'; break; - case 31: $front = 'red'; break; - case 32: $front = 'green'; break; - case 33: $front = 'yellow'; break; - case 34: $front = 'blue'; break; - case 35: $front = 'magenta'; break; - case 36: $front = 'cyan'; break; - case 37: $front = 'white'; break; + case '30': $front = 'black'; break; + case '31': $front = 'red'; break; + case '32': $front = 'green'; break; + case '33': $front = 'yellow'; break; + case '34': $front = 'blue'; break; + case '35': $front = 'magenta'; break; + case '36': $front = 'cyan'; break; + case '37': $front = 'white'; break; - case 40: $back = 'black'; break; - case 41: $back = 'red'; break; - case 42: $back = 'green'; break; - case 43: $back = 'yellow'; break; - case 44: $back = 'blue'; break; - case 45: $back = 'magenta'; break; - case 46: $back = 'cyan'; break; - case 47: $back = 'white'; break; + case '40': $back = 'black'; break; + case '41': $back = 'red'; break; + case '42': $back = 'green'; break; + case '43': $back = 'yellow'; break; + case '44': $back = 'blue'; break; + case '45': $back = 'magenta'; break; + case '46': $back = 'cyan'; break; + case '47': $back = 'white'; break; // @codingStandardsIgnoreEnd default: diff --git a/tests/Functional/Net/SFTPLargeFileTest.php b/tests/Functional/Net/SFTPLargeFileTest.php index 718426b0..47d2df2b 100644 --- a/tests/Functional/Net/SFTPLargeFileTest.php +++ b/tests/Functional/Net/SFTPLargeFileTest.php @@ -16,6 +16,7 @@ class Functional_Net_SFTPLargeFileTest extends Functional_Net_SFTPTestCase if (!extension_loaded('mcrypt') && !extension_loaded('openssl')) { self::markTestSkipped('This test depends on mcrypt or openssl for performance.'); } + self::ensureConstant('CRYPT_HASH_MODE', 3); parent::setUpBeforeClass(); } @@ -41,3 +42,7 @@ class Functional_Net_SFTPLargeFileTest extends Functional_Net_SFTPTestCase ); } } + +class SFTPLargeFileTest extends Functional_Net_SFTPLargeFileTest +{ +} diff --git a/tests/Functional/Net/SFTPStreamTest.php b/tests/Functional/Net/SFTPStreamTest.php index e24e85f5..8601e5a3 100644 --- a/tests/Functional/Net/SFTPStreamTest.php +++ b/tests/Functional/Net/SFTPStreamTest.php @@ -22,7 +22,7 @@ class Functional_Net_SFTPStreamTest extends Functional_Net_SFTPTestCase 'sftp' => ['session' => $this->sftp], ]); $fp = fopen($this->buildUrl('fooo.txt'), 'wb', false, $context); - $this->assertInternalType('resource', $fp); + $this->assertIsResource($fp); fclose($fp); $this->assertSame(0, $this->sftp->filesize('fooo.txt')); } @@ -64,3 +64,7 @@ class Functional_Net_SFTPStreamTest extends Functional_Net_SFTPTestCase ); } } + +class SFTPStreamTest extends Functional_Net_SFTPStreamTest +{ +} diff --git a/tests/Functional/Net/SFTPUserStoryTest.php b/tests/Functional/Net/SFTPUserStoryTest.php index 56c76fe5..235cc4cb 100644 --- a/tests/Functional/Net/SFTPUserStoryTest.php +++ b/tests/Functional/Net/SFTPUserStoryTest.php @@ -29,8 +29,7 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase { $sftp = new SFTP($this->getEnv('SSH_HOSTNAME')); - $this->assertInternalType( - 'object', + $this->assertIsObject( $sftp, 'Could not construct NET_SFTP object.' ); @@ -136,6 +135,16 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase return $sftp; } + static function demoCallback($length) + { + $r = substr(self::$buffer, 0, $length); + self::$buffer = substr(self::$buffer, $length); + if (strlen($r)) { + return $r; + } + return null; + } + /** * @depends testStatOnDir */ @@ -161,16 +170,6 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase return $sftp; } - static function callback($length) - { - $r = substr(self::$buffer, 0, $length); - self::$buffer = substr(self::$buffer, $length); - if (strlen($r)) { - return $r; - } - return null; - } - /** * @depends testStatOnDir */ @@ -178,7 +177,7 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase { self::$buffer = self::$exampleData; $this->assertTrue( - $sftp->put('file1.txt', [__CLASS__, 'callback'], $sftp::SOURCE_CALLBACK), + $sftp->put('file1.txt', [__CLASS__, 'demoCallback'], $sftp::SOURCE_CALLBACK), 'Failed asserting that example data could be successfully put().' ); @@ -440,8 +439,7 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase */ public function testReadlink($sftp) { - $this->assertInternalType( - 'string', + $this->assertIsString( $sftp->readlink('symlink'), 'Failed asserting that a symlink\'s target could be read' ); @@ -456,14 +454,12 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase public function testStatOnCWD($sftp) { $stat = $sftp->stat('.'); - $this->assertInternalType( - 'array', + $this->assertIsArray( $stat, 'Failed asserting that stat on . returns an array' ); $lstat = $sftp->lstat('.'); - $this->assertInternalType( - 'array', + $this->assertIsArray( $lstat, 'Failed asserting that lstat on . returns an array' ); @@ -605,8 +601,7 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase 'Failed asserting that scratch directory could ' . 'be created.' ); - $this->assertInternalType( - 'array', + $this->assertIsArray( $sftp->stat(self::$scratchDir), 'Failed asserting that stat on an existent empty directory returns an array' ); @@ -753,3 +748,7 @@ class Functional_Net_SFTPUserStoryTest extends PhpseclibFunctionalTestCase $this->assertEquals($list_cache_enabled, $list_cache_disabled, 'The files should be the same regardless of stat cache', 0.0, 10, true); } } + +class SFTPUserStoryTest extends Functional_Net_SFTPUserStoryTest +{ +} diff --git a/tests/Functional/Net/SSH2AgentTest.php b/tests/Functional/Net/SSH2AgentTest.php index 99aaa95a..94d5c398 100644 --- a/tests/Functional/Net/SSH2AgentTest.php +++ b/tests/Functional/Net/SSH2AgentTest.php @@ -53,3 +53,7 @@ class Functional_Net_SSH2AgentTest extends PhpseclibFunctionalTestCase return $args; } } + +class SSH2AgentTest extends Functional_Net_SSH2AgentTest +{ +} diff --git a/tests/Functional/Net/SSH2Test.php b/tests/Functional/Net/SSH2Test.php index f51c1cb7..4b996b10 100644 --- a/tests/Functional/Net/SSH2Test.php +++ b/tests/Functional/Net/SSH2Test.php @@ -14,8 +14,7 @@ class Functional_Net_SSH2Test extends PhpseclibFunctionalTestCase { $ssh = new SSH2($this->getEnv('SSH_HOSTNAME')); - $this->assertInternalType( - 'object', + $this->assertIsObject $ssh, 'Could not construct NET_SSH2 object.' ); @@ -125,7 +124,7 @@ class Functional_Net_SSH2Test extends PhpseclibFunctionalTestCase { $ssh = new SSH2($this->getEnv('SSH_HOSTNAME')); - $this->assertInternalType('string', $ssh->getServerPublicHostKey()); + $this->assertIsString($ssh->getServerPublicHostKey()); } public function testOpenSocketConnect() @@ -173,3 +172,7 @@ class Functional_Net_SSH2Test extends PhpseclibFunctionalTestCase $ssh->read(); } } + +class SSH2Test extends Functional_Net_SSH2Test +{ +} diff --git a/tests/PhpseclibTestCase.php b/tests/PhpseclibTestCase.php index 1996af6c..3eaff1c7 100644 --- a/tests/PhpseclibTestCase.php +++ b/tests/PhpseclibTestCase.php @@ -117,4 +117,70 @@ abstract class PhpseclibTestCase extends PHPUnit\Framework\TestCase $method->setAccessible(true); return $method->invokeArgs($obj, $params); } + + // assertIsArray was not introduced until PHPUnit 8 + public static function assertIsArray($actual, $message = '') + { + if (method_exists('\PHPUnit\Framework\TestCase', 'assertIsArray')) { + parent::assertIsArray($actual, $message); + return; + } + + parent::assertInternalType('array', $actual, $message); + } + + // assertIsString was not introduced until PHPUnit 8 + public static function assertIsString($actual, $message = '') + { + if (method_exists('\PHPUnit\Framework\TestCase', 'assertIsString')) { + parent::assertIsString($actual, $message); + return; + } + + parent::assertInternalType('string', $actual, $message); + } + + // assertIsResource was not introduced until PHPUnit 8 + public static function assertIsResource($actual, $message = '') + { + if (method_exists('\PHPUnit\Framework\TestCase', 'assertIsResource')) { + parent::assertIsResource($actual, $message); + return; + } + + parent::assertInternalType('resource', $actual, $message); + } + + // assertIsObject was not introduced until PHPUnit 8 + public static function assertIsObject($actual, $message = '') + { + if (method_exists('\PHPUnit\Framework\TestCase', 'assertIsObject')) { + parent::assertIsObject($actual, $message); + return; + } + + parent::assertInternalType('object', $actual, $message); + } + + // assertContains is deprecated for strings in PHPUnit 8 + public static function assertStringContainsString($needle, $haystack, $message = '') + { + if (method_exists('\PHPUnit\Framework\TestCase', 'assertStringContainsString')) { + parent::assertStringContainsString($needle, $haystack, $message); + return; + } + + parent::assertContains($needle, $haystack, $message); + } + + // assertNotContains is deprecated for strings in PHPUnit 8 + public static function assertStringNotContainsString($needle, $haystack, $message = '') + { + if (method_exists('\PHPUnit\Framework\TestCase', 'assertStringContainsString')) { + parent::assertStringNotContainsString($needle, $haystack, $message); + return; + } + + parent::assertNotContains($needle, $haystack, $message); + } } diff --git a/tests/Unit/Crypt/AES/EvalTest.php b/tests/Unit/Crypt/AES/EvalTest.php index 5b0ad846..004eb227 100644 --- a/tests/Unit/Crypt/AES/EvalTest.php +++ b/tests/Unit/Crypt/AES/EvalTest.php @@ -14,3 +14,7 @@ class Unit_Crypt_AES_EvalTest extends Unit_Crypt_AES_TestCase $this->engine = 'Eval'; } } + +class EvalTest extends Unit_Crypt_AES_EvalTest +{ +} diff --git a/tests/Unit/Crypt/AES/McryptTest.php b/tests/Unit/Crypt/AES/McryptTest.php index dcba5432..81c6aeae 100644 --- a/tests/Unit/Crypt/AES/McryptTest.php +++ b/tests/Unit/Crypt/AES/McryptTest.php @@ -14,3 +14,7 @@ class Unit_Crypt_AES_McryptTest extends Unit_Crypt_AES_TestCase $this->engine = 'mcrypt'; } } + +class McryptTest extends Unit_Crypt_AES_McryptTest +{ +} diff --git a/tests/Unit/Crypt/AES/OpenSSLTest.php b/tests/Unit/Crypt/AES/OpenSSLTest.php index cb22c795..1b78bb47 100644 --- a/tests/Unit/Crypt/AES/OpenSSLTest.php +++ b/tests/Unit/Crypt/AES/OpenSSLTest.php @@ -14,3 +14,7 @@ class Unit_Crypt_AES_OpenSSLTest extends Unit_Crypt_AES_TestCase $this->engine = 'OpenSSL'; } } + +class OpenSSLTest extends Unit_Crypt_AES_OpenSSLTest +{ +} diff --git a/tests/Unit/Crypt/AES/InternalTest.php b/tests/Unit/Crypt/AES/PurePHPTest.php similarity index 70% rename from tests/Unit/Crypt/AES/InternalTest.php rename to tests/Unit/Crypt/AES/PurePHPTest.php index 9e0e8cb3..f380cb4e 100644 --- a/tests/Unit/Crypt/AES/InternalTest.php +++ b/tests/Unit/Crypt/AES/PurePHPTest.php @@ -7,10 +7,14 @@ use phpseclib3\Crypt\Common\BlockCipher; -class Unit_Crypt_AES_InternalTest extends Unit_Crypt_AES_TestCase +class Unit_Crypt_AES_PurePHPTest extends Unit_Crypt_AES_TestCase { protected function setUp() { $this->engine = 'PHP'; } } + +class PurePHPTest extends Unit_Crypt_AES_PurePHPTest +{ +} diff --git a/tests/Unit/Crypt/BlowfishTest.php b/tests/Unit/Crypt/BlowfishTest.php index 5289c67f..576f4167 100644 --- a/tests/Unit/Crypt/BlowfishTest.php +++ b/tests/Unit/Crypt/BlowfishTest.php @@ -131,3 +131,7 @@ class Unit_Crypt_BlowfishTest extends PhpseclibTestCase } } } + +class BlowfishTest extends Unit_Crypt_BlowfishTest +{ +} diff --git a/tests/Unit/Crypt/ChaCha20.php b/tests/Unit/Crypt/ChaCha20.php index efc17870..5a4899e2 100644 --- a/tests/Unit/Crypt/ChaCha20.php +++ b/tests/Unit/Crypt/ChaCha20.php @@ -216,3 +216,7 @@ class Unit_Crypt_ChaCha20Test extends PhpseclibTestCase } } } + +class ChaCha20Test extends Unit_Crypt_ChaCha20Test +{ +} diff --git a/tests/Unit/Crypt/DHTest.php b/tests/Unit/Crypt/DHTest.php index 0750ce5e..3f8c4a99 100644 --- a/tests/Unit/Crypt/DHTest.php +++ b/tests/Unit/Crypt/DHTest.php @@ -30,7 +30,7 @@ Sgh5jjQE3e+VGbPNOkMbMCsKbfJfFDdP4TVtbVHCReSFtXZiXn7G9ExC6aY37WsL public function testParametersWithInteger() { $a = DH::createParameters(512); - $this->assertInternalType('string', "$a"); + $this->assertIsString("$a"); } public function testParametersWithBigIntegers() @@ -55,8 +55,8 @@ Sgh5jjQE3e+VGbPNOkMbMCsKbfJfFDdP4TVtbVHCReSFtXZiXn7G9ExC6aY37WsL { $param = DH::createParameters('diffie-hellman-group1-sha1'); $key = DH::createKey($param); - $this->assertInternalType('string', "$key"); - $this->assertInternalType('string', (string) $key->getPublicKey()); + $this->assertIsString("$key"); + $this->assertIsString((string) $key->getPublicKey()); } public function testLoadPrivate() @@ -119,7 +119,7 @@ i2REGZNPWmF3SRPrtq/4urrDRU0F2eQks7qnTkrauPK1/UvE1gwbqWrWgBko+6L+ Q3ADAIcv9LEmTBnSAOsCs1K9ExAmSv/T2/4+9dW28UYb+p/uV477d1wf+nCWS6VU /gTm -----END PUBLIC KEY-----'); - $this->assertInternalType('string', DH::computeSecret($ourPriv, $theirPub)); + $this->assertIsString(DH::computeSecret($ourPriv, $theirPub)); } public function testComputeSecret() @@ -130,7 +130,7 @@ Q3ADAIcv9LEmTBnSAOsCs1K9ExAmSv/T2/4+9dW28UYb+p/uV477d1wf+nCWS6VU foreach ($curves as $curve) { $ourPriv = EC::createKey($curve); $theirPub = EC::createKey($curve)->getPublicKey(); - $this->assertInternalType('string', DH::computeSecret($ourPriv, $theirPub)); + $this->assertIsString(DH::computeSecret($ourPriv, $theirPub)); } } @@ -264,3 +264,7 @@ Q3ADAIcv9LEmTBnSAOsCs1K9ExAmSv/T2/4+9dW28UYb+p/uV477d1wf+nCWS6VU $this->assertSame($expected, DH::computeSecret($bobPrivate, $alicePublic)); } } + +class DHTest extends Unit_Crypt_DHTest +{ +} diff --git a/tests/Unit/Crypt/DSA/CreateKeyTest.php b/tests/Unit/Crypt/DSA/CreateKeyTest.php index 70dd1a61..c5a7223f 100644 --- a/tests/Unit/Crypt/DSA/CreateKeyTest.php +++ b/tests/Unit/Crypt/DSA/CreateKeyTest.php @@ -54,3 +54,6 @@ class Unit_Crypt_DSA_CreateKeyTest extends PhpseclibTestCase } } +class CreateKeyTest extends Unit_Crypt_DSA_CreateKeyTest +{ +} diff --git a/tests/Unit/Crypt/DSA/LoadKeyTest.php b/tests/Unit/Crypt/DSA/LoadDSAKeyTest.php similarity index 94% rename from tests/Unit/Crypt/DSA/LoadKeyTest.php rename to tests/Unit/Crypt/DSA/LoadDSAKeyTest.php index 48b7f2af..0c681658 100644 --- a/tests/Unit/Crypt/DSA/LoadKeyTest.php +++ b/tests/Unit/Crypt/DSA/LoadDSAKeyTest.php @@ -14,7 +14,7 @@ use phpseclib3\Crypt\DSA\Formats\Keys\PKCS8; use phpseclib3\Crypt\DSA\Formats\Keys\PuTTY; use phpseclib3\Math\BigInteger; -class Unit_Crypt_DSA_LoadKeyTest extends PhpseclibTestCase +class Unit_Crypt_DSA_LoadDSAKeyTest extends PhpseclibTestCase { /** * @expectedException \phpseclib3\Exception\NoKeyLoadedException @@ -57,9 +57,9 @@ Private-MAC: 62b92ddd8b341b9414d640c24ba6ae929a78e039 $dsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $dsa); - $this->assertInternalType('string', "$dsa"); - $this->assertInternalType('string', $dsa->getPublicKey()->toString('PuTTY')); - $this->assertInternalType('string', $dsa->getParameters()->toString('PuTTY')); + $this->assertIsString("$dsa"); + $this->assertIsString($dsa->getPublicKey()->toString('PuTTY')); + $this->assertIsString($dsa->getParameters()->toString('PuTTY')); $dsa = $dsa->withPassword('password'); $this->assertGreaterThan(0, strlen("$dsa")); @@ -91,9 +91,9 @@ Eb2s9fDOpnMhj+WqwcQgs18= $dsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $dsa); - $this->assertInternalType('string', "$dsa"); - $this->assertInternalType('string', $dsa->getPublicKey()->toString('PKCS1')); - $this->assertInternalType('string', (string) $dsa->getParameters()); + $this->assertIsString("$dsa"); + $this->assertIsString($dsa->getPublicKey()->toString('PKCS1')); + $this->assertIsString((string) $dsa->getParameters()); } public function testParameters() @@ -133,7 +133,7 @@ ZpmyOpXM/0opRMIRdmqVW4ardBFNokmlqngwcbaptfRnk9W2cQtx0lmKy6X/vnis $dsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PublicKey::class, $dsa); - $this->assertInternalType('string', "$dsa"); + $this->assertIsString("$dsa"); } public function testPKCS8Private() @@ -151,7 +151,7 @@ Syea3pSvWdBpVhWzOX4A7qbxs+bhWAQWAhQiF7sFfCtZ7oOgCb2aJ9ySC9sTug== $dsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $dsa); - $this->assertInternalType('string', "$dsa"); + $this->assertIsString("$dsa"); $this->assertInstanceOf(PublicKey::class, $dsa->getPublicKey()); $this->assertInstanceOf(Parameters::class, $dsa->getParameters()); } @@ -208,7 +208,7 @@ ZpmyOpXM/0opRMIRdmqVW4ardBFNokmlqngwcbaptfRnk9W2cQtx0lmKy6X/vnis $dsa = PublicKeyLoader::load($key); $xml = $dsa->toString('XML'); - $this->assertContains('DSAKeyValue', $xml); + $this->assertStringContainsString('DSAKeyValue', $xml); $dsa = PublicKeyLoader::load($xml); $pkcs8 = $dsa->toString('PKCS8'); @@ -256,3 +256,7 @@ dlN48qLbSmUgsO7gq/1vodebMSHcduV4JTq8ix5Ey87QAAABQhHEzWiduF4V0DestSnJ3q $this->assertTrue($key->verify('zzz', $sig)); } } + +class LoadDSAKeyTest extends Unit_Crypt_DSA_LoadDSAKeyTest +{ +} diff --git a/tests/Unit/Crypt/DSA/SignatureTest.php b/tests/Unit/Crypt/DSA/SignatureTest.php index a624508f..c1e9b080 100644 --- a/tests/Unit/Crypt/DSA/SignatureTest.php +++ b/tests/Unit/Crypt/DSA/SignatureTest.php @@ -122,3 +122,7 @@ kBniZHdFBAZBTE14YJUBkw== $this->assertTrue($dsa->verify($message, $signature)); } } + +class SignatureTest extends Unit_Crypt_DSA_SignatureTest +{ +} diff --git a/tests/Unit/Crypt/EC/CurveTest.php b/tests/Unit/Crypt/EC/CurveTest.php index 93d20d64..23e67e65 100644 --- a/tests/Unit/Crypt/EC/CurveTest.php +++ b/tests/Unit/Crypt/EC/CurveTest.php @@ -509,3 +509,7 @@ Private-MAC: b85ca0eb7c612df5d18af85128821bd53faaa3ef'); $this->assertTrue($public->verify($message, $signature, 'Raw')); } } + +class CurveTest extends Unit_Crypt_EC_CurveTest +{ +} diff --git a/tests/Unit/Crypt/EC/KeyTest.php b/tests/Unit/Crypt/EC/KeyTest.php index 60b958f1..e3b2afa8 100644 --- a/tests/Unit/Crypt/EC/KeyTest.php +++ b/tests/Unit/Crypt/EC/KeyTest.php @@ -14,7 +14,7 @@ use phpseclib3\Crypt\EC\Formats\Keys\XML; use phpseclib3\Crypt\PublicKeyLoader; use phpseclib3\Crypt\EC\PrivateKey; -class Unit_Crypt_EC_LoadKeyTest extends PhpseclibTestCase +class Unit_Crypt_EC_KeyTest extends PhpseclibTestCase { public function testBinaryPKCS1PrivateParameters() { @@ -508,3 +508,7 @@ lEIq93iMVzIArjGaKrFDAAAADHJvb3RAdmFncmFudAE= $this->assertTrue($key->withSignatureFormat('SSH2')->verify('zzz', $sig2)); } } + +class KeyTest extends Unit_Crypt_EC_KeyTest +{ +} diff --git a/tests/Unit/Crypt/GCMTest.php b/tests/Unit/Crypt/GCMTest.php index 090f2152..3927c116 100644 --- a/tests/Unit/Crypt/GCMTest.php +++ b/tests/Unit/Crypt/GCMTest.php @@ -235,3 +235,7 @@ class Unit_Crypt_GCMTest extends PhpseclibTestCase $this->assertEquals($plaintext, $aes->decrypt($ciphertext)); } } + +class GCMTest extends Unit_Crypt_GCMTest +{ +} diff --git a/tests/Unit/Crypt/HashTest.php b/tests/Unit/Crypt/HashTest.php index 9c8a1e3d..0ef81c92 100644 --- a/tests/Unit/Crypt/HashTest.php +++ b/tests/Unit/Crypt/HashTest.php @@ -465,3 +465,7 @@ class Unit_Crypt_HashTest extends PhpseclibTestCase $this->assertSame($hash->hash($message), pack('H*', $tag), $error); } } + +class HashTest extends Unit_Crypt_HashTest +{ +} diff --git a/tests/Unit/Crypt/RC2Test.php b/tests/Unit/Crypt/RC2Test.php index bd1ed161..a05cc5fb 100644 --- a/tests/Unit/Crypt/RC2Test.php +++ b/tests/Unit/Crypt/RC2Test.php @@ -127,3 +127,7 @@ class Unit_Crypt_RC2Test extends PhpseclibTestCase $this->assertEquals($result, $plaintext, "Failed asserting that decrypted result yielded $plaintext as a result in $engine engine"); } } + +class RC2Test extends Unit_Crypt_RC2Test +{ +} diff --git a/tests/Unit/Crypt/RC4Test.php b/tests/Unit/Crypt/RC4Test.php index 92df2c42..07c7f2b7 100644 --- a/tests/Unit/Crypt/RC4Test.php +++ b/tests/Unit/Crypt/RC4Test.php @@ -250,3 +250,7 @@ class Unit_Crypt_RC4Test extends PhpseclibTestCase } } } + +class RC4Test extends Unit_Crypt_RC4Test +{ +} diff --git a/tests/Unit/Crypt/RSA/CreateKeyTest.php b/tests/Unit/Crypt/RSA/CreateKeyTest.php index 6506d862..7c56312f 100644 --- a/tests/Unit/Crypt/RSA/CreateKeyTest.php +++ b/tests/Unit/Crypt/RSA/CreateKeyTest.php @@ -34,7 +34,7 @@ class Unit_Crypt_RSA_CreateKeyTest extends PhpseclibTestCase { list($publickey, $privatekey) = $args; $ciphertext = $publickey->encrypt('zzz'); - $this->assertInternalType('string', $ciphertext); + $this->assertIsString($ciphertext); $plaintext = $privatekey->decrypt($ciphertext); $this->assertSame($plaintext, 'zzz'); } diff --git a/tests/Unit/Crypt/RSA/LoadKeyTest.php b/tests/Unit/Crypt/RSA/LoadKeyTest.php index f2fe3e0c..2c04e2b3 100644 --- a/tests/Unit/Crypt/RSA/LoadKeyTest.php +++ b/tests/Unit/Crypt/RSA/LoadKeyTest.php @@ -52,7 +52,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $rsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', "$rsa"); + $this->assertIsString("$rsa"); } public function testPKCS1SpacesKey() @@ -75,7 +75,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $rsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', "$rsa"); + $this->assertIsString("$rsa"); } public function testPKCS1NoHeaderKey() @@ -95,7 +95,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $rsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', "$rsa"); + $this->assertIsString("$rsa"); } public function testPKCS1NoWhitespaceNoHeaderKey() @@ -115,7 +115,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $rsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', "$rsa"); + $this->assertIsString("$rsa"); } public function testRawPKCS1Key() @@ -136,7 +136,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $rsa = PublicKeyLoader::load($key); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', "$rsa"); + $this->assertIsString("$rsa"); } public function testLoadPKCS8PrivateKey() @@ -174,7 +174,7 @@ xryZaRDVmtMuf/OZBQ== $rsa = PublicKeyLoader::load($key, 'password'); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', "$rsa"); + $this->assertIsString("$rsa"); } public function testSavePKCS8PrivateKey() @@ -247,7 +247,7 @@ Ao8eayMp6FcvNucIpUndo1X8dKMv3Y26ZQIDAQAB $rsa = PublicKeyLoader::load($key)->asPrivateKey(); $this->assertInstanceOf(PrivateKey::class, $rsa); - $this->assertInternalType('string', $rsa->sign('zzz')); + $this->assertIsString($rsa->sign('zzz')); } public function testSSHPubKey() @@ -574,6 +574,7 @@ mKVKf5kPx2aR2W2KAcgw3TJIu1QX7N+l3kFrf9Owtz1a -----END ENCRYPTED PRIVATE KEY-----'; $pass = 'asdf'; +<<<<<<< HEAD $this->pkcs8tester($key, $pass); } @@ -1043,6 +1044,10 @@ n9dyFZYXxil/cgFG/PDMnuXy1Wcl8hb8iwQag4Y7ohiLXVTJa/0BAgMBAAE= -----END RSA PRIVATE KEY-----'; $key = PublicKeyLoader::load($key); $result = $key->toString('PKCS1'); - $this->assertInternalType('string', $result); + $this->assertIsString($result); } } + +class LoadKeyTest extends Unit_Crypt_RSA_LoadKeyTest +{ +} diff --git a/tests/Unit/Crypt/RSA/ModeTest.php b/tests/Unit/Crypt/RSA/ModeTest.php index bc4e12e4..b252f799 100644 --- a/tests/Unit/Crypt/RSA/ModeTest.php +++ b/tests/Unit/Crypt/RSA/ModeTest.php @@ -184,3 +184,7 @@ HERE; $this->assertEquals('sha1', $rsa->getMGFHash()); } } + +class ModeTest extends Unit_Crypt_RSA_ModeTest +{ +} diff --git a/tests/Unit/Crypt/RandomTest.php b/tests/Unit/Crypt/RandomTest.php index 5385826c..989b9c5f 100644 --- a/tests/Unit/Crypt/RandomTest.php +++ b/tests/Unit/Crypt/RandomTest.php @@ -53,3 +53,7 @@ class Unit_Crypt_RandomTest extends PhpseclibTestCase return [$x]; } } + +class RandomTest extends Unit_Crypt_RandomTest +{ +} diff --git a/tests/Unit/Crypt/Salsa20.php b/tests/Unit/Crypt/Salsa20.php index 974feba7..188d6fc9 100644 --- a/tests/Unit/Crypt/Salsa20.php +++ b/tests/Unit/Crypt/Salsa20.php @@ -158,3 +158,7 @@ class Unit_Crypt_Salsa20Test extends PhpseclibTestCase $this->assertEquals(bin2hex($result), $expected, "Failed asserting that key $key / $iv yielded expected output in $engine engine"); } } + +class Salsa20Test extends Unit_Crypt_Salsa20Test +{ +} diff --git a/tests/Unit/Crypt/TripleDESTest.php b/tests/Unit/Crypt/TripleDESTest.php index 700bb211..e189523f 100644 --- a/tests/Unit/Crypt/TripleDESTest.php +++ b/tests/Unit/Crypt/TripleDESTest.php @@ -201,3 +201,7 @@ class Unit_Crypt_TripleDESTest extends PhpseclibTestCase } } } + +class TripleDESTest extends Unit_Crypt_TripleDESTest +{ +} diff --git a/tests/Unit/Crypt/TwofishTest.php b/tests/Unit/Crypt/TwofishTest.php index e9f3f78d..6044cc64 100644 --- a/tests/Unit/Crypt/TwofishTest.php +++ b/tests/Unit/Crypt/TwofishTest.php @@ -73,3 +73,7 @@ class Unit_Crypt_TwofishTest extends PhpseclibTestCase } } } + +class TwofishTest extends Unit_Crypt_TwofishTest +{ +} diff --git a/tests/Unit/File/ANSITest.php b/tests/Unit/File/ANSITest.php index 0cc4a029..7775d7bd 100644 --- a/tests/Unit/File/ANSITest.php +++ b/tests/Unit/File/ANSITest.php @@ -63,3 +63,7 @@ class Unit_File_ANSITest extends PhpseclibTestCase $this->assertSame(str_repeat('z', 80), $lines[22]); } } + +class ANSITest extends Unit_File_ANSITest +{ +} diff --git a/tests/Unit/File/ASN1Test.php b/tests/Unit/File/ASN1Test.php index 810111e0..c1b7a4ef 100644 --- a/tests/Unit/File/ASN1Test.php +++ b/tests/Unit/File/ASN1Test.php @@ -78,7 +78,7 @@ class Unit_File_ASN1Test extends PhpseclibTestCase $decoded = ASN1::decodeBER(base64_decode($str)); $result = ASN1::asn1map($decoded[0], $AS_REP); - $this->assertInternalType('array', $result); + $this->assertIsArray($result); } /** @@ -229,7 +229,7 @@ class Unit_File_ASN1Test extends PhpseclibTestCase $decoded = ASN1::decodeBER(base64_decode($str)); $result = ASN1::asn1map($decoded[0], $AS_REP); - $this->assertInternalType('array', $result); + $this->assertIsArray($result); } /** @@ -271,7 +271,7 @@ class Unit_File_ASN1Test extends PhpseclibTestCase public function testContextSpecificNonConstructed() { $decoded = ASN1::decodeBER(base64_decode('MBaAFJtUo7c00HsI5EPZ4bkICfkOY2Pv')); - $this->assertInternalType('string', $decoded[0]['content'][0]['content']); + $this->assertIsString($decoded[0]['content'][0]['content']); } /** @@ -280,7 +280,7 @@ class Unit_File_ASN1Test extends PhpseclibTestCase public function testEmptyContextTag() { $decoded = ASN1::decodeBER("\xa0\x00"); - $this->assertInternalType('array', $decoded); + $this->assertIsArray($decoded); $this->assertCount(0, $decoded[0]['content']); } @@ -390,6 +390,10 @@ class Unit_File_ASN1Test extends PhpseclibTestCase $a = ASN1::decodeBER($a); $a = ASN1::asn1map($a[0], $map); - $this->assertInternalType('array', $a); + $this->assertIsArray($a); } } + +class ASN1Test extends Unit_File_ASN1Test +{ +} diff --git a/tests/Unit/File/X509/CSRTest.php b/tests/Unit/File/X509/CSRTest.php index 4e5e666f..93ce07b5 100644 --- a/tests/Unit/File/X509/CSRTest.php +++ b/tests/Unit/File/X509/CSRTest.php @@ -28,7 +28,7 @@ v5RwaQHmQEzHofTzF7I+ $spkac = $x509->loadCSR($test); - $this->assertInternalType('array', $spkac); + $this->assertIsArray($spkac); } public function testCSRWithAttributes() @@ -68,7 +68,7 @@ draiRBZruwMPwPIP $csr = $x509->loadCSR($test); - $this->assertInternalType('array', $csr); + $this->assertIsArray($csr); } public function testCSRDER() @@ -93,7 +93,7 @@ draiRBZruwMPwPIP $csr = $x509->loadCSR($csr); - $this->assertInternalType('array', $csr); + $this->assertIsArray($csr); } // on PHP 7.1, with older versions of phpseclib, this would produce a "A non-numeric value encountered" warning @@ -121,3 +121,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $x509->saveCSR($x509->signCSR(), X509::FORMAT_DER); } } + +class CSRTest extends Unit_File_X509_CSRTest +{ +} diff --git a/tests/Unit/File/X509/SPKACTest.php b/tests/Unit/File/X509/SPKACTest.php index d71d2813..26678b33 100644 --- a/tests/Unit/File/X509/SPKACTest.php +++ b/tests/Unit/File/X509/SPKACTest.php @@ -28,11 +28,11 @@ class Unit_File_X509_SPKACTest extends PhpseclibTestCase $spkac = $x509->loadSPKAC($test); - $this->assertInternalType('array', $spkac); + $this->assertIsArray($spkac); $spkac = $x509->loadSPKAC('SPKAC=' . $test); - $this->assertInternalType('array', $spkac); + $this->assertIsArray($spkac); $this->assertTrue( $x509->validateSignature(), @@ -41,7 +41,7 @@ class Unit_File_X509_SPKACTest extends PhpseclibTestCase $pubKey = $x509->getPublicKey(); - $this->assertInternalType('string', "$pubKey"); + $this->assertIsString("$pubKey"); } public function testSaveSPKAC() @@ -55,17 +55,17 @@ class Unit_File_X509_SPKACTest extends PhpseclibTestCase $x509->setChallenge('...'); $spkac = $x509->signSPKAC(); - $this->assertInternalType('array', $spkac); + $this->assertIsArray($spkac); - $this->assertInternalType('string', $x509->saveSPKAC($spkac)); + $this->assertIsString($x509->saveSPKAC($spkac)); $x509 = new X509(); $x509->setPrivateKey($privatekey); $spkac = $x509->signSPKAC(); - $this->assertInternalType('array', $spkac); + $this->assertIsArray($spkac); - $this->assertInternalType('string', $x509->saveSPKAC($spkac)); + $this->assertIsString($x509->saveSPKAC($spkac)); } public function testBadSignatureSPKAC() @@ -96,3 +96,7 @@ class Unit_File_X509_SPKACTest extends PhpseclibTestCase ); } } + +class SPKACTest extends Unit_File_X509_SPKACTest +{ +} diff --git a/tests/Unit/File/X509/X509Test.php b/tests/Unit/File/X509/X509Test.php index 3aaefd36..be32bd2f 100644 --- a/tests/Unit/File/X509/X509Test.php +++ b/tests/Unit/File/X509/X509Test.php @@ -59,7 +59,7 @@ k6m17mi63YW/+iPCGOWZ2qXmY5HPEyyF2L4L4IDryFJ+8xLyw3pH9/yp5aHZDtp6 $cert = $x509->loadX509($test); - $this->assertInternalType('array', $cert['tbsCertificate']['extensions'][3]['extnValue']); + $this->assertIsArray($cert['tbsCertificate']['extensions'][3]['extnValue']); } public function testLoadUnsupportedExtension() @@ -865,7 +865,7 @@ uhPlgkgknwIgdDqqKIAF60ouiynsbU53ERS0TwpjeFiYGA48SwYW3Nk= $result = $x509->sign($issuer, $subject); $result = $x509->saveX509($result); - $this->assertInternalType('string', $result); + $this->assertIsString($result); $r = $x509->loadX509($result); $this->assertSame('id-dsa-with-sha256', $r['tbsCertificate']['signature']['algorithm']); @@ -896,7 +896,7 @@ wkwhE/JaQAEHq2PHnEmvwyBiJcHSdLXkcLzYlg19Ho0BPqVKdulx8GAk $result = $x509->sign($issuer, $subject); $result = $x509->saveX509($result); - $this->assertInternalType('string', $result); + $this->assertIsString($result); $r = $x509->loadX509($result); $this->assertSame('ecdsa-with-SHA256', $r['tbsCertificate']['signature']['algorithm']); @@ -935,7 +935,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $result = $x509->sign($issuer, $subject); $result = $x509->saveX509($result); - $this->assertInternalType('string', $result); + $this->assertIsString($result); $r = $x509->loadX509($result); $this->assertSame('id-RSASSA-PSS', $r['tbsCertificate']['signature']['algorithm']); @@ -979,7 +979,7 @@ U9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ $result = $x509->sign($issuer, $subject); $result = $x509->saveX509($result); - $this->assertInternalType('string', $result); + $this->assertIsString($result); $r = $x509->loadX509($result); $this->assertSame('sha256WithRSAEncryption', $r['tbsCertificate']['signature']['algorithm']); @@ -1170,3 +1170,7 @@ mDaPrsUl15evEah6amsBfpQiWRbKpDLKs1kF $this->assertFalse($r); } } + +class X509Test extends Unit_File_X509_X509Test +{ +} diff --git a/tests/Unit/Math/BigInteger/BCMathTest.php b/tests/Unit/Math/BigInteger/BCMathTest.php index 1aab9ebd..2ed99056 100644 --- a/tests/Unit/Math/BigInteger/BCMathTest.php +++ b/tests/Unit/Math/BigInteger/BCMathTest.php @@ -27,3 +27,7 @@ class Unit_Math_BigInteger_BCMathTest extends Unit_Math_BigInteger_TestCase return 'phpseclib3\Math\BigInteger\Engines\BCMath'; } } + +class BCMathTest extends Unit_Math_BigInteger_BCMathTest +{ +} diff --git a/tests/Unit/Math/BigInteger/DefaultTest.php b/tests/Unit/Math/BigInteger/DefaultTest.php index 640d06d4..cfc4fb48 100644 --- a/tests/Unit/Math/BigInteger/DefaultTest.php +++ b/tests/Unit/Math/BigInteger/DefaultTest.php @@ -19,3 +19,7 @@ class Unit_Math_BigInteger_DefaultTest extends Unit_Math_BigInteger_TestCase return 'phpseclib3\Math\BigInteger'; } } + +class DefaultTest extends Unit_Math_BigInteger_DefaultTest +{ +} diff --git a/tests/Unit/Math/BigInteger/GMPTest.php b/tests/Unit/Math/BigInteger/GMPTest.php index bcbecdc3..f7ba9808 100644 --- a/tests/Unit/Math/BigInteger/GMPTest.php +++ b/tests/Unit/Math/BigInteger/GMPTest.php @@ -27,3 +27,7 @@ class Unit_Math_BigInteger_GMPTest extends Unit_Math_BigInteger_TestCase return 'phpseclib3\Math\BigInteger\Engines\GMP'; } } + +class GMPTest extends Unit_Math_BigInteger_GMPTest +{ +} diff --git a/tests/Unit/Math/BigInteger/PHP32Test.php b/tests/Unit/Math/BigInteger/PHP32Test.php index c9b3cfdd..3d2b7637 100644 --- a/tests/Unit/Math/BigInteger/PHP32Test.php +++ b/tests/Unit/Math/BigInteger/PHP32Test.php @@ -36,3 +36,7 @@ class Unit_Math_BigInteger_PHP32Test extends Unit_Math_BigInteger_TestCase return 'phpseclib3\Math\BigInteger\Engines\PHP32'; } } + +class PHP32Test extends Unit_Math_BigInteger_PHP32Test +{ +} diff --git a/tests/Unit/Math/BigInteger/PHP64OpenSSLTest.php b/tests/Unit/Math/BigInteger/PHP64OpenSSLTest.php index c4a28bcf..b8654a84 100644 --- a/tests/Unit/Math/BigInteger/PHP64OpenSSLTest.php +++ b/tests/Unit/Math/BigInteger/PHP64OpenSSLTest.php @@ -20,3 +20,7 @@ class Unit_Math_BigInteger_PHP64OpenSSLTest extends Unit_Math_BigInteger_PHP64Te } } } + +class PHP64OpenSSLTest extends Unit_Math_BigInteger_PHP64OpenSSLTest +{ +} diff --git a/tests/Unit/Math/BigInteger/PHP64Test.php b/tests/Unit/Math/BigInteger/PHP64Test.php index f1c89093..c44af643 100644 --- a/tests/Unit/Math/BigInteger/PHP64Test.php +++ b/tests/Unit/Math/BigInteger/PHP64Test.php @@ -35,3 +35,7 @@ class Unit_Math_BigInteger_PHP64Test extends Unit_Math_BigInteger_TestCase return 'phpseclib3\Math\BigInteger\Engines\PHP64'; } } + +classs PHP64Test extends Unit_Math_BigInteger_PHP64Test +{ +} diff --git a/tests/Unit/Math/BigInteger/TestCase.php b/tests/Unit/Math/BigInteger/TestCase.php index a64fb9ad..75066a54 100644 --- a/tests/Unit/Math/BigInteger/TestCase.php +++ b/tests/Unit/Math/BigInteger/TestCase.php @@ -384,7 +384,7 @@ abstract class Unit_Math_BigInteger_TestCase extends PhpseclibTestCase { $num = $this->getInstance(50); $str = print_r($num, true); - $this->assertContains('[value] => 0x32', $str); + $this->assertStringContainsString('[value] => 0x32', $str); } public function testPrecision() diff --git a/tests/Unit/Math/BigIntegerTest.php b/tests/Unit/Math/BigIntegerTest.php index ee84d3a0..632eb068 100644 --- a/tests/Unit/Math/BigIntegerTest.php +++ b/tests/Unit/Math/BigIntegerTest.php @@ -71,3 +71,7 @@ ENGINE static::assertSame($expectedEngineClass, $bigint->toString()); } } + +class BigIntegerTest extends Unit_Math_BigIntegerTest +{ +} diff --git a/tests/Unit/Net/SFTPStreamTest.php b/tests/Unit/Net/SFTPStreamUnitTest.php similarity index 85% rename from tests/Unit/Net/SFTPStreamTest.php rename to tests/Unit/Net/SFTPStreamUnitTest.php index 90647bd7..8a365ad8 100644 --- a/tests/Unit/Net/SFTPStreamTest.php +++ b/tests/Unit/Net/SFTPStreamUnitTest.php @@ -7,7 +7,7 @@ use phpseclib3\Net\SFTP\Stream; -class Unit_Net_SFTPStreamTest extends PhpseclibTestCase +class Unit_Net_SFTPStreamUnitTest extends PhpseclibTestCase { public function testRegisterWithoutArgument() { @@ -24,3 +24,7 @@ class Unit_Net_SFTPStreamTest extends PhpseclibTestCase $this->assertTrue(stream_wrapper_unregister($protocol)); } } + +class SFTPStreamUnitTest extends Unit_Net_SFTPStreamUnitTest +{ +} diff --git a/tests/Unit/Net/SSH2Test.php b/tests/Unit/Net/SSH2UnitTest.php similarity index 76% rename from tests/Unit/Net/SSH2Test.php rename to tests/Unit/Net/SSH2UnitTest.php index 8703709a..ad599106 100644 --- a/tests/Unit/Net/SSH2Test.php +++ b/tests/Unit/Net/SSH2UnitTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.html MIT License */ -class Unit_Net_SSH2Test extends PhpseclibTestCase +class Unit_Net_SSH2UnitTest extends PhpseclibTestCase { public function formatLogDataProvider() { @@ -41,30 +41,30 @@ class Unit_Net_SSH2Test extends PhpseclibTestCase $identifier = self::callFunc($this->createSSHMock(), 'generate_identifier'); $this->assertStringStartsWith('SSH-2.0-phpseclib_3.0', $identifier); - if (function_exists('\\Sodium\\library_version_major')) { + if (function_exists('sodium_crypto_sign_keypair')) { $this->assertContains('libsodium', $identifier); } if (extension_loaded('openssl')) { - $this->assertContains('openssl', $identifier); - $this->assertNotContains('mcrypt', $identifier); + $this->assertStringContainsString('openssl', $identifier); + $this->assertStringNotContainsString('mcrypt', $identifier); } elseif (extension_loaded('mcrypt')) { - $this->assertNotContains('openssl', $identifier); - $this->assertContains('mcrypt', $identifier); + $this->assertStringNotContainsString('openssl', $identifier); + $this->assertStringContainsString('mcrypt', $identifier); } else { - $this->assertNotContains('openssl', $identifier); - $this->assertNotContains('mcrypt', $identifier); + $this->assertStringNotContainsString('openssl', $identifier); + $this->assertStringNotContainsString('mcrypt', $identifier); } if (extension_loaded('gmp')) { - $this->assertContains('gmp', $identifier); - $this->assertNotContains('bcmath', $identifier); + $this->assertStringContainsString('gmp', $identifier); + $this->assertStringNotContainsString('bcmath', $identifier); } elseif (extension_loaded('bcmath')) { - $this->assertNotContains('gmp', $identifier); - $this->assertContains('bcmath', $identifier); + $this->assertStringNotContainsString('gmp', $identifier); + $this->assertStringContainsString('bcmath', $identifier); } else { - $this->assertNotContains('gmp', $identifier); - $this->assertNotContains('bcmath', $identifier); + $this->assertStringNotContainsString('gmp', $identifier); + $this->assertStringNotContainsString('bcmath', $identifier); } } @@ -133,3 +133,7 @@ class Unit_Net_SSH2Test extends PhpseclibTestCase ->getMock(); } } + +class SSH2UnitTest extends Unit_Net_SSH2UnitTest +{ +} diff --git a/travis/run-phpunit.sh b/travis/run-phpunit.sh index ce393a77..2b1d90cc 100755 --- a/travis/run-phpunit.sh +++ b/travis/run-phpunit.sh @@ -20,6 +20,17 @@ then PHPUNIT_ARGS="$PHPUNIT_ARGS -d zend.enable_gc=0" fi +if [ `php -r "echo (int) version_compare(PHP_VERSION, '7.3', '>=');"` = "1" ] +then + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/n setUpBeforeClass()/n setUpBeforeClass(): void/g' + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/n setUp()/n setUp(): void/g' + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/n tearDown()/n tearDown(): void/g' + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/\(n assertIsArray([^)]*)\)/\1: void/g' + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/\(n assertIsString([^)]*)\)/\1: void/g' + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/\(n assertStringContainsString([^)]*)\)/\1: void/g' + find tests -type f -name "*.php" -print0 | xargs -0 sed -i 's/\(n assertStringNotContainsString([^)]*)\)/\1: void/g' +fi + if [ "$TRAVIS_PHP_VERSION" = 'hhvm' -o `php -r "echo (int) version_compare(PHP_VERSION, '7.0', '>=');"` = "1" ] then find tests -type f -name "*Test.php" | \