bebat / filesystem-assertions
关于文件系统对象的断言集合
1.1.1
2023-08-05 04:16 UTC
Requires
- php: ^7.2 || ^8.0
- ext-mbstring: *
- ext-posix: *
- phpunit/phpunit: ^8.0 || ^9.0 || ^10.0
Requires (Dev)
- captainhook/captainhook: ~5.14.4
- captainhook/plugin-composer: ~5.3.3
- codeception/assert-throws: ~1.3.0
- ergebnis/composer-normalize: ~2.15.0
- friendsofphp/php-cs-fixer: ~3.4.0 || ~3.22.0
- maglnet/composer-require-checker: ^2.1.0 || ~4.4.0
- mockery/mockery: ~1.3.6
- php-mock/php-mock: ~2.4.1
- phpstan/extension-installer: ~1.1.0 || ~1.3.1
- phpstan/phpstan: ~1.10.26
- phpstan/phpstan-deprecation-rules: ~1.1.3
- phpstan/phpstan-mockery: ~1.1.1
- phpstan/phpstan-phpunit: ~1.3.13
- phpstan/phpstan-strict-rules: ~1.5.1
README
PHPUnit 文件系统断言
这是一个用于测试文件系统条目的 PHPUnit 断言的小集合。它的目的是补充已经内置到 PHPUnit 中的断言。
目录
安装
使用 Composer 从 Packagist 安装当前版本的 PHPUnit 文件系统断言。
composer require --dev bebat/filesystem-assertions
将这些建议添加到测试用例中最简单的方法是使用一个特质。
<?php use BeBat\FilesystemAssertions\FilesystemAssertionsTrait; use PHPUnit\Framework\TestCase; class SomeTest extends TestCase { use FilesystemAssertionsTrait; // ... }
可用的断言
// Assert that $directory contains one or more files. assertDirectoryContainsFiles(string $directory, array $files, string $message = ''); assertDirectoryDoesNotContainFiles(string $directory, array $files, string $message = '') // Assert that $file is owned by a user ID or name. assertFileHasUserId(string $file, int $uid, string $message = '') assertFileHasUser(string $file, string $user, string $message = '') assertFileDoesNotHaveUserId(string $file, int $uid, string $message = '') assertFileDoesNotHaveUser(string $file, string $user, string $message = '') // Assert that $file has a group ID or name. assertFileHasGroupId(string $file, int $gid, string $message = '') assertFileHasGroup(string $file, string $group, string $message = '') assertFileDoesNotHaveGroupId(string $file, int $gid, string $message = '') assertFileDoesNotHaveGroup(string $file, string $group, string $message = '') // Assert that $path is a regular file. assertIsFile(string $path, string $message = '') assertIsNotFile(string $path, string $message = '') // Assert that $file is a symbolic link. assertFileIsLink(string $file, string $message = '') assertFileIsNotLink(string $file, string $message = '') // Assert that $file is executable. assertFileIsExecutable(string $file, string $message = '') assertFileIsNotExecutable(string $file, string $message = '') // Assert that $file is a symbolic link and points to $target. assertSymbolicLinkPointsTo(string $file, string $target, string $message = '') assertSymbolicLinkDoesNotPointTo(string $file, string $target, string $message = '') // Assert that $file's permissions are exactly an octal string (or integer). assertFilePermissionsEqual(string $file, $perms, string $message = '') assertFilePermissionsDoNotEqual(string $file, $perms, string $message = '') // Assert that $file's permissions MATCH an octal string (or integer). // For example, if a file has permissions 755, 644 would match but 422 would NOT. assertFilePermissionsMatch(string $file, $perms, string $message = '') assertFilePermissionsDoNotMatch(string $file, $perms, string $message = '')