mirror of
https://github.com/pestphp/pest.git
synced 2026-07-22 09:30:02 +02:00
50 lines
3.6 KiB
PHP
50 lines
3.6 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use Pest\Support\DatasetInfo;
|
|
|
|
it('can check if dataset is defined inside a Datasets directory', function (string $file, bool $inside): void {
|
|
expect(DatasetInfo::isInsideADatasetsDirectory($file))->toBe($inside);
|
|
})->with([
|
|
['file' => '/var/www/Datasets/project/tests/Datasets/Nested/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/Datasets/project/tests/Features/Datasets/Nested/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Datasets/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Datasets/Nested/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Datasets.php', 'inside' => false],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Nested/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Nested/Datasets/Numbers.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Features/Numbers.php', 'inside' => false],
|
|
['file' => '/var/www/project/tests/Features/Datasets.php', 'inside' => false],
|
|
]);
|
|
|
|
it('can check if dataset is defined inside a Datasets.php file', function (string $file, bool $inside): void {
|
|
expect(DatasetInfo::isADatasetsFile($file))->toBe($inside);
|
|
})->with([
|
|
['file' => '/var/www/project/tests/Datasets/Numbers.php', 'inside' => false],
|
|
['file' => '/var/www/project/tests/Datasets.php', 'inside' => true],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Numbers.php', 'inside' => false],
|
|
['file' => '/var/www/project/tests/Features/Numbers.php', 'inside' => false],
|
|
['file' => '/var/www/project/tests/Features/Datasets.php', 'inside' => true],
|
|
]);
|
|
|
|
it('computes the dataset scope', function (string $file, string $scope): void {
|
|
expect(DatasetInfo::scope($file))->toBe($scope);
|
|
})->with([
|
|
['file' => '/var/www/Datasets/project/tests/Datasets/Nested/Numbers.php', 'scope' => '/var/www/Datasets/project/tests'],
|
|
['file' => '/var/www/Datasets/project/tests/Features/Datasets/Nested/Numbers.php', 'scope' => '/var/www/Datasets/project/tests/Features'],
|
|
['file' => '/var/www/project/tests/Datasets/Numbers.php', 'scope' => '/var/www/project/tests'],
|
|
['file' => '/var/www/project/tests/Datasets/Nested/Numbers.php', 'scope' => '/var/www/project/tests'],
|
|
['file' => '/var/www/project/tests/Datasets.php', 'scope' => '/var/www/project/tests'],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Numbers.php', 'scope' => '/var/www/project/tests/Features'],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Nested/Numbers.php', 'scope' => '/var/www/project/tests/Features'],
|
|
['file' => '/var/www/project/tests/Features/Numbers.php', 'scope' => '/var/www/project/tests/Features/Numbers.php'],
|
|
['file' => '/var/www/project/tests/Features/Datasets.php', 'scope' => '/var/www/project/tests/Features'],
|
|
['file' => '/var/www/project/tests/Features/Controllers/Datasets/Numbers.php', 'scope' => '/var/www/project/tests/Features/Controllers'],
|
|
['file' => '/var/www/project/tests/Features/Controllers/Datasets/Nested/Numbers.php', 'scope' => '/var/www/project/tests/Features/Controllers'],
|
|
['file' => '/var/www/project/tests/Features/Datasets/Nested/Datasets/Numbers.php', 'scope' => '/var/www/project/tests/Features'],
|
|
['file' => '/var/www/project/tests/Features/Controllers/Numbers.php', 'scope' => '/var/www/project/tests/Features/Controllers/Numbers.php'],
|
|
['file' => '/var/www/project/tests/Features/Controllers/Datasets.php', 'scope' => '/var/www/project/tests/Features/Controllers'],
|
|
]);
|