fix: missing != and !== on new toUseStrictEquality arch expectation

This commit is contained in:
Nuno Maduro
2024-09-23 14:08:21 +01:00
parent a55da85dd2
commit 432ff221c6
6 changed files with 15 additions and 7 deletions

View File

@ -380,7 +380,7 @@ final class Expectation
if (self::hasExtend($name)) { if (self::hasExtend($name)) {
$extend = self::$extends[$name]->bindTo($this, Expectation::class); $extend = self::$extends[$name]->bindTo($this, Expectation::class);
if ($extend != false) { if ($extend != false) { // @pest-arch-ignore-line
return $extend; return $extend;
} }
} }
@ -522,9 +522,9 @@ final class Expectation
{ {
return Targeted::make( return Targeted::make(
$this, $this,
fn (ObjectDescription $object): bool => ! str_contains((string) file_get_contents($object->path), ' == '), // @pest-arch-ignore-line fn (ObjectDescription $object): bool => ! str_contains((string) file_get_contents($object->path), ' == ') && ! str_contains((string) file_get_contents($object->path), ' != '),
'to use strict equality', 'to use strict equality',
FileLineFinder::where(fn (string $line): bool => str_contains($line, ' == ')), FileLineFinder::where(fn (string $line): bool => str_contains($line, ' == ') || str_contains($line, ' != ')),
); );
} }

View File

@ -159,9 +159,9 @@ final readonly class OppositeExpectation
{ {
return Targeted::make( return Targeted::make(
$this->original, $this->original,
fn (ObjectDescription $object): bool => ! str_contains((string) file_get_contents($object->path), ' === '), fn (ObjectDescription $object): bool => ! str_contains((string) file_get_contents($object->path), ' === ') && ! str_contains((string) file_get_contents($object->path), ' !== '),
'to use strict equality', 'to use strict equality',
FileLineFinder::where(fn (string $line): bool => str_contains($line, ' === ')), FileLineFinder::where(fn (string $line): bool => str_contains($line, ' === ') || str_contains($line, ' !== ')),
); );
} }

View File

@ -150,7 +150,7 @@ final readonly class Converter
{ {
if ($testSuite instanceof TestSuiteForTestMethodWithDataProvider) { if ($testSuite instanceof TestSuiteForTestMethodWithDataProvider) {
$firstTest = $this->getFirstTest($testSuite); $firstTest = $this->getFirstTest($testSuite);
if ($firstTest != null) { if ($firstTest instanceof \PHPUnit\Event\Code\TestMethod) {
return $this->getTestMethodNameWithoutDatasetSuffix($firstTest); return $this->getTestMethodNameWithoutDatasetSuffix($firstTest);
} }
} }

View File

@ -26,7 +26,7 @@ final class Closure
$closure = BaseClosure::bind($closure, $newThis, $newScope); $closure = BaseClosure::bind($closure, $newThis, $newScope);
if ($closure === null) { if (! $closure instanceof \Closure) {
throw ShouldNotHappen::fromMessage('Could not bind closure.'); throw ShouldNotHappen::fromMessage('Could not bind closure.');
} }

View File

@ -14,5 +14,9 @@ class NotStrictEquality
if ($a == $b) { if ($a == $b) {
echo 'Equal'; echo 'Equal';
} }
if ($a != $b) {
echo 'Equal';
}
} }
} }

View File

@ -14,5 +14,9 @@ class StrictEquality
if ($a === $b) { if ($a === $b) {
echo 'Equal'; echo 'Equal';
} }
if ($a !== $b) {
echo 'Equal';
}
} }
} }