Fix PHPUnit test on Windows, ignore calling linux system util for other OS

This commit is contained in:
crazywhalecc 2025-08-01 01:53:38 +08:00
parent 451de4a6f6
commit 6b23f4b34a
3 changed files with 13 additions and 2 deletions

View File

@ -99,9 +99,12 @@ class SPCTarget
*/ */
public static function getLibcVersion(): ?string public static function getLibcVersion(): ?string
{ {
if (PHP_OS_FAMILY === 'Linux') {
$libc = self::getLibc(); $libc = self::getLibc();
return SystemUtil::getLibcVersionIfExists($libc); return SystemUtil::getLibcVersionIfExists($libc);
} }
return null;
}
/** /**
* Returns the target OS family, e.g. Linux, Darwin, Windows, BSD. * Returns the target OS family, e.g. Linux, Darwin, Windows, BSD.

View File

@ -19,6 +19,10 @@ final class PkgConfigUtilTest extends TestCase
public static function setUpBeforeClass(): void public static function setUpBeforeClass(): void
{ {
if (PHP_OS_FAMILY === 'Windows') {
// Skip tests on Windows as pkg-config is not typically available
self::markTestSkipped('PkgConfigUtil tests are not applicable on Windows.');
}
parent::setUpBeforeClass(); parent::setUpBeforeClass();
// Save original PATH // Save original PATH

View File

@ -21,6 +21,10 @@ class SPCConfigUtilTest extends TestCase
*/ */
public static function setUpBeforeClass(): void public static function setUpBeforeClass(): void
{ {
if (PHP_OS_FAMILY === 'Windows') {
// Skip tests on Windows as SPCConfigUtil is not applicable
self::markTestSkipped('SPCConfigUtil tests are not applicable on Windows.');
}
$testdir = WORKING_DIR . '/.configtest'; $testdir = WORKING_DIR . '/.configtest';
FileSystem::createDir($testdir); FileSystem::createDir($testdir);
FileSystem::writeFile($testdir . '/lib.json', file_get_contents(ROOT_DIR . '/config/lib.json')); FileSystem::writeFile($testdir . '/lib.json', file_get_contents(ROOT_DIR . '/config/lib.json'));