diff --git a/tests/FilterByLikeTest.php b/tests/FilterByLikeTest.php index 2b8eee68792fbdbad7af7b3f6fb0162f2491b2b6..887db29459578df054a0870c2694d2c881f05b02 100644 --- a/tests/FilterByLikeTest.php +++ b/tests/FilterByLikeTest.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace IQDEV\Tests\Packages\DoctrineHttpFilter; +use IQDEV\Packages\DoctrineHttpFilter\Exception\FilterParameterValueIsNullException; use IQDEV\Packages\DoctrineHttpFilter\Filter\Like; use IQDEV\Packages\DoctrineHttpFilter\HttpFilter; use IQDEV\Tests\Packages\DoctrineHttpFilter\Entity\Post; @@ -126,4 +127,38 @@ class FilterByLikeTest extends TestCase $this->assertEmpty($result); } + + public function testFilterLikeWithoutParameterValue(): void + { + /** @var PostRepository $postRepository */ + $postRepository = $this->em->getRepository(Post::class); + + $this->expectException(FilterParameterValueIsNullException::class); + + $postRepository->createQueryByFilter([ + 'title' => Like::class, + ], new Request([ + HttpFilter::REQUEST_FILTER_KEY => [], + ])) + ->getQuery() + ->getResult(); + } + + public function testFilterDateWithDifferentKey(): void + { + /** @var PostRepository $postRepository */ + $postRepository = $this->em->getRepository(Post::class); + + $this->expectException(FilterParameterValueIsNullException::class); + + $postRepository->createQueryByFilter([ + 'title' => Like::class, + ], new Request([ + HttpFilter::REQUEST_FILTER_KEY => [ + 'notTitle' => 'Not title value' + ], + ])) + ->getQuery() + ->getResult(); + } }