diff --git a/src/Factories/TestCaseFactory.php b/src/Factories/TestCaseFactory.php index bc75f5c1..d2a98c88 100644 --- a/src/Factories/TestCaseFactory.php +++ b/src/Factories/TestCaseFactory.php @@ -140,6 +140,10 @@ final class TestCaseFactory $proxies = $this->proxies; $factoryTest = $this->test; + if ($chains->hasMessage('markTestSkipped')) { + $proxies->forgetMessage('expectException'); + } + /** * @return mixed */ diff --git a/src/Support/HigherOrderMessageCollection.php b/src/Support/HigherOrderMessageCollection.php index a6634685..68e5c3df 100644 --- a/src/Support/HigherOrderMessageCollection.php +++ b/src/Support/HigherOrderMessageCollection.php @@ -69,4 +69,24 @@ final class HigherOrderMessageCollection 0, ); } + + public function hasMessage(string $name): bool + { + foreach ($this->messages as $message) { + if ($message->name === $name) { + return true; + } + } + + return false; + } + + public function forgetMessage(string $name): void + { + foreach ($this->messages as $index => $message) { + if ($message->name === $name) { + unset($this->messages[$index]); + } + } + } }