diff --git a/tests/Functional/Net/SCPSSH2UserStoryTest.php b/tests/Functional/Net/SCPSSH2UserStoryTest.php index 3697dcf6..295e982f 100644 --- a/tests/Functional/Net/SCPSSH2UserStoryTest.php +++ b/tests/Functional/Net/SCPSSH2UserStoryTest.php @@ -14,11 +14,6 @@ class Functional_Net_SCPSSH2UserStoryTest extends PhpseclibFunctionalTestCase static public function setUpBeforeClass() { - if (getenv('TRAVIS') && version_compare(PHP_VERSION, '5.3.0', '<')) { - self::markTestIncomplete( - 'This test fails on Travis CI on PHP 5.2 due to requiring GMP.' - ); - } parent::setUpBeforeClass(); self::$remoteFile = uniqid('phpseclib-scp-ssh2-') . '.txt'; self::$exampleData = str_repeat('abscp12345', 1000); diff --git a/tests/PhpseclibFunctionalTestCase.php b/tests/PhpseclibFunctionalTestCase.php index 588d7d89..5575c970 100644 --- a/tests/PhpseclibFunctionalTestCase.php +++ b/tests/PhpseclibFunctionalTestCase.php @@ -10,7 +10,21 @@ abstract class PhpseclibFunctionalTestCase extends PhpseclibTestCase static public function setUpBeforeClass() { if (extension_loaded('runkit')) { - self::ensureConstant('MATH_BIGINTEGER_MODE', MATH_BIGINTEGER_MODE_GMP); + if (extension_loaded('gmp')) { + self::ensureConstant( + 'MATH_BIGINTEGER_MODE', + MATH_BIGINTEGER_MODE_GMP + ); + } elseif (extension_loaded('bcmath')) { + self::ensureConstant( + 'MATH_BIGINTEGER_MODE', + MATH_BIGINTEGER_MODE_BCMATH + ); + } else { + self::markTestSkipped( + 'Should have gmp or bcmath extension for functional test.' + ); + } self::ensureConstant('CRYPT_HASH_MODE', CRYPT_HASH_MODE_HASH); self::reRequireFile('Math/BigInteger.php'); self::reRequireFile('Crypt/Hash.php');