diff --git a/src/Concerns/Testable.php b/src/Concerns/Testable.php index defdc8e2..9d54711e 100644 --- a/src/Concerns/Testable.php +++ b/src/Concerns/Testable.php @@ -194,7 +194,13 @@ trait Testable $method = TestSuite::getInstance()->tests->get(self::$__filename)->getMethod($this->name()); - $description = $this->dataName() ? $method->description.' with '.$this->dataName() : $method->description; + $description = $method->description; + if ($this->dataName()) { + $description = str_contains((string) $description, ':dataset') + ? str_replace(':dataset', str_replace('dataset ', '', $this->dataName()), (string) $description) + : $description.' with '.$this->dataName(); + } + $description = htmlspecialchars(html_entity_decode((string) $description), ENT_NOQUOTES); if ($method->repetitions > 1) { diff --git a/tests/.snapshots/success.txt b/tests/.snapshots/success.txt index 6014f550..85805685 100644 --- a/tests/.snapshots/success.txt +++ b/tests/.snapshots/success.txt @@ -77,6 +77,8 @@ ✓ eager registered wrapped datasets did the job right ✓ named datasets with dataset "one" ✓ named datasets with dataset "two" + ✓ interpolated "one" named datasets + ✓ interpolated "two" named datasets ✓ named datasets did the job right ✓ lazy named datasets with (Bar) ✓ it creates unique test case names with ('Name 1', Pest\Plugin Object (), true) #1 @@ -1440,4 +1442,4 @@ WARN Tests\Visual\Version - visual snapshot of help command output - Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 21 skipped, 1030 passed (2515 assertions) \ No newline at end of file + Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 21 skipped, 1032 passed (2517 assertions) \ No newline at end of file diff --git a/tests/Features/DatasetsTests.php b/tests/Features/DatasetsTests.php index 7d209c40..25c3e3f1 100644 --- a/tests/Features/DatasetsTests.php +++ b/tests/Features/DatasetsTests.php @@ -109,6 +109,13 @@ test('named datasets', function ($text) use ($state, $datasets) { 'two' => [2], ]); +test('interpolated :dataset named datasets', function ($text) { + expect(true)->toBeTrue(); +})->with([ + 'one' => [1], + 'two' => [2], +]); + test('named datasets did the job right', function () use ($state) { expect($state->text)->toBe('121212121212'); }); diff --git a/tests/Visual/Parallel.php b/tests/Visual/Parallel.php index daf06faf..a67555f4 100644 --- a/tests/Visual/Parallel.php +++ b/tests/Visual/Parallel.php @@ -16,7 +16,7 @@ $run = function () { test('parallel', function () use ($run) { expect($run('--exclude-group=integration')) - ->toContain('Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 16 skipped, 1016 passed (2483 assertions)') + ->toContain('Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 16 skipped, 1018 passed (2485 assertions)') ->toContain('Parallel: 3 processes'); })->skipOnWindows();