From 75f7ee0acf5a54c85cb78b73434078667fbd764a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20N=C3=BCrnberger?= Date: Fri, 19 Jun 2020 20:39:09 +0200 Subject: [PATCH] added feedback from @nunomaduro --- src/Concerns/TestCase.php | 7 +------ src/PendingObjects/TestCall.php | 9 ++------- src/Support/ExceptionTrace.php | 4 ++-- src/Support/Mixed.php | 32 -------------------------------- tests/.snapshots/success.txt | 13 ++++++------- tests/Features/Depends.php | 31 ++++++++++++------------------- 6 files changed, 23 insertions(+), 73 deletions(-) delete mode 100644 src/Support/Mixed.php diff --git a/src/Concerns/TestCase.php b/src/Concerns/TestCase.php index 8191256c..369bb5d5 100644 --- a/src/Concerns/TestCase.php +++ b/src/Concerns/TestCase.php @@ -53,11 +53,6 @@ trait TestCase $this->setGroups($groups); } - public function addDependencies(array $tests): void - { - $this->setDependencies($tests); - } - /** * Returns the test case name. Note that, in Pest * we ignore withDataset argument as the description @@ -144,7 +139,7 @@ trait TestCase { return ExceptionTrace::ensure(function () use ($closure, $arguments) { return call_user_func_array(Closure::bind($closure, $this, get_class($this)), $arguments); - })->getValue(); + }); } public function getPrintableTestCaseName(): string diff --git a/src/PendingObjects/TestCall.php b/src/PendingObjects/TestCall.php index 66703a50..259d8654 100644 --- a/src/PendingObjects/TestCall.php +++ b/src/PendingObjects/TestCall.php @@ -84,20 +84,15 @@ final class TestCall return $this; } - public function dependsOn(string ...$tests): TestCall + public function depends(string ...$tests): TestCall { $this->testCaseFactory ->factoryProxies - ->add(Backtrace::file(), Backtrace::line(), 'addDependencies', [$tests]); + ->add(Backtrace::file(), Backtrace::line(), 'setDependencies', [$tests]); return $this; } - public function depends(string ...$tests): TestCall - { - return $this->dependsOn(...$tests); - } - /** * Makes the test suite only this test case. */ diff --git a/src/Support/ExceptionTrace.php b/src/Support/ExceptionTrace.php index 320716e0..e7c31d58 100644 --- a/src/Support/ExceptionTrace.php +++ b/src/Support/ExceptionTrace.php @@ -18,10 +18,10 @@ final class ExceptionTrace * Ensures the given closure reports * the good execution context. */ - public static function ensure(Closure $closure): Mixed + public static function ensure(Closure $closure) { try { - return new Mixed($closure()); + return $closure(); } catch (Throwable $throwable) { if (Str::startsWith($message = $throwable->getMessage(), self::UNDEFINED_METHOD)) { $message = str_replace(self::UNDEFINED_METHOD, 'Call to undefined method ', $message); diff --git a/src/Support/Mixed.php b/src/Support/Mixed.php deleted file mode 100644 index 17ea6060..00000000 --- a/src/Support/Mixed.php +++ /dev/null @@ -1,32 +0,0 @@ -value = $value; - } - - /** - * @return mixed - */ - public function getValue() - { - return $this->value; - } -} diff --git a/tests/.snapshots/success.txt b/tests/.snapshots/success.txt index a0b846d0..3e6832ec 100644 --- a/tests/.snapshots/success.txt +++ b/tests/.snapshots/success.txt @@ -45,11 +45,10 @@ PASS Tests\Features\Depends ✓ first ✓ second - ✓ dependsOn - ✓ dependsOn with ...params - ✓ dependsOn with defined arguments - ✓ dependsOn run test only once - ✓ depends alias for dependsOn + ✓ depends + ✓ depends with ...params + ✓ depends with defined arguments + ✓ depends run test only once PASS Tests\Features\Exceptions ✓ it gives access the the underlying expectException @@ -153,5 +152,5 @@ WARN Tests\Visual\Success s visual snapshot of test suite on success - Tests: 6 skipped, 86 passed - Time: 2.61s + Tests: 6 skipped, 85 passed + Time: 2.60s diff --git a/tests/Features/Depends.php b/tests/Features/Depends.php index 0bf30539..0e7ed5ea 100644 --- a/tests/Features/Depends.php +++ b/tests/Features/Depends.php @@ -16,32 +16,25 @@ test('second', function () use (&$runCounter) { return 'second'; }); -test('dependsOn', function () { +test('depends', function () { assertEquals( ['first', 'second'], func_get_args() ); -})->dependsOn('first', 'second'); +})->depends('first', 'second'); -test('dependsOn with ...params', function (string ...$params) { - assertEquals( - ['first', 'second'], - $params - ); -})->dependsOn('first', 'second'); - -test('dependsOn with defined arguments', function (string $first, string $second) { - assertEquals('first', $first); - assertEquals('second', $second); -})->dependsOn('first', 'second'); - -test('dependsOn run test only once', function () use (&$runCounter) { - assertEquals(2, $runCounter); -})->dependsOn('first', 'second'); - -test('depends alias for dependsOn', function (string ...$params) { +test('depends with ...params', function (string ...$params) { assertEquals( ['first', 'second'], $params ); })->depends('first', 'second'); + +test('depends with defined arguments', function (string $first, string $second) { + assertEquals('first', $first); + assertEquals('second', $second); +})->depends('first', 'second'); + +test('depends run test only once', function () use (&$runCounter) { + assertEquals(2, $runCounter); +})->depends('first', 'second');