Merge pull request #942 from fabio-ivona/datasets-in-pest-file

[fix] missing datasets when defined in Pest.php file
This commit is contained in:
Nuno Maduro
2023-08-29 09:54:09 +01:00
committed by GitHub
3 changed files with 17 additions and 0 deletions

View File

@ -4,6 +4,8 @@ declare(strict_types=1);
namespace Pest\Support; namespace Pest\Support;
use function Pest\testDirectory;
/** /**
* @internal * @internal
*/ */
@ -25,6 +27,10 @@ final class DatasetInfo
public static function scope(string $file): string public static function scope(string $file): string
{ {
if (Str::endsWith($file, testDirectory('Pest.php'))) {
return dirname($file);
}
if (self::isInsideADatasetsDirectory($file)) { if (self::isInsideADatasetsDirectory($file)) {
return dirname($file, 2); return dirname($file, 2);
} }

View File

@ -10,3 +10,12 @@ test('uses dataset', function ($value) use ($state) {
test('the right dataset is taken', function () use ($state) { test('the right dataset is taken', function () use ($state) {
expect($state->text)->toBe('12'); expect($state->text)->toBe('12');
}); });
it('can see datasets defined in Pest.php file', function (string $value) use ($state) {
$state->text .= $value;
expect(true)->toBe(true);
})->with('dataset_in_pest_file');
test('Pest.php dataset is taken', function () use ($state) {
expect($state->text)->toBe('12AB');
});

View File

@ -37,3 +37,5 @@ function helper_returns_string()
{ {
return 'string'; return 'string';
} }
dataset('dataset_in_pest_file', ['A', 'B']);