From ffbc4a80ecd3169d1dbf058abc754df616441dce Mon Sep 17 00:00:00 2001 From: Thomas Lallement Date: Wed, 3 Apr 2024 15:18:51 +0200 Subject: [PATCH 1/5] Add isNotNull in ExpressionBuilder.php --- src/ExpressionBuilder.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ExpressionBuilder.php b/src/ExpressionBuilder.php index fc25e3a9..bef0a05e 100644 --- a/src/ExpressionBuilder.php +++ b/src/ExpressionBuilder.php @@ -77,6 +77,12 @@ public function isNull(string $field) return new Comparison($field, Comparison::EQ, new Value(null)); } + /** @return Comparison */ + public function isNotNull(string $field) + { + return new Comparison($field, Comparison::NEQ, new Value(null)); + } + /** * @param mixed[] $values * From 8c18edb372fb014f295f4011e8947f8782943b62 Mon Sep 17 00:00:00 2001 From: Thomas Lallement Date: Wed, 3 Apr 2024 15:21:12 +0200 Subject: [PATCH 2/5] Update ExpressionBuilderTest.php --- tests/ExpressionBuilderTest.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/ExpressionBuilderTest.php b/tests/ExpressionBuilderTest.php index cfba7626..1c272938 100644 --- a/tests/ExpressionBuilderTest.php +++ b/tests/ExpressionBuilderTest.php @@ -114,6 +114,14 @@ public function testIsNull(): void self::assertEquals(Comparison::EQ, $expr->getOperator()); } + public function testIsNotNull(): void + { + $expr = $this->builder->isNotNull('a'); + + self::assertInstanceOf(Comparison::class, $expr); + self::assertEquals(Comparison::NEQ, $expr->getOperator()); + } + public function testContains(): void { $expr = $this->builder->contains('a', 'b'); From 4e105bb08570f03d15473a21ff3c6cfbe98c3791 Mon Sep 17 00:00:00 2001 From: Thomas Lallement Date: Wed, 3 Apr 2024 16:00:31 +0200 Subject: [PATCH 3/5] Update src/ExpressionBuilder.php Co-authored-by: Alexander M. Turek --- src/ExpressionBuilder.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ExpressionBuilder.php b/src/ExpressionBuilder.php index bef0a05e..7bf5a09a 100644 --- a/src/ExpressionBuilder.php +++ b/src/ExpressionBuilder.php @@ -77,8 +77,7 @@ public function isNull(string $field) return new Comparison($field, Comparison::EQ, new Value(null)); } - /** @return Comparison */ - public function isNotNull(string $field) + public function isNotNull(string $field): Comparison { return new Comparison($field, Comparison::NEQ, new Value(null)); } From 843d58ae4b4c06f9e56cbd43c9b6cae0a6ef6a64 Mon Sep 17 00:00:00 2001 From: Thomas Lallement Date: Wed, 3 Apr 2024 16:10:58 +0200 Subject: [PATCH 4/5] Update documentation expression-builder.rst --- docs/en/expression-builder.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/en/expression-builder.rst b/docs/en/expression-builder.rst index e0224418..67586072 100644 --- a/docs/en/expression-builder.rst +++ b/docs/en/expression-builder.rst @@ -124,6 +124,16 @@ isNull $collection->matching(new Criteria($expression)); +isNotNull +------ + +.. code-block:: php + $expressionBuilder = Criteria::expr(); + + $expression = $expressionBuilder->isNotNull('foo'); + + $collection->matching(new Criteria($expression)); + in --- From 70e6a8b1d52011b2808e06ed820f639c79d49d3b Mon Sep 17 00:00:00 2001 From: Thomas Lallement Date: Wed, 3 Apr 2024 16:25:40 +0200 Subject: [PATCH 5/5] Update docs/en/expression-builder.rst MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Grégoire Paris --- docs/en/expression-builder.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/expression-builder.rst b/docs/en/expression-builder.rst index 67586072..043b89cc 100644 --- a/docs/en/expression-builder.rst +++ b/docs/en/expression-builder.rst @@ -125,7 +125,7 @@ isNull $collection->matching(new Criteria($expression)); isNotNull ------- +--------- .. code-block:: php $expressionBuilder = Criteria::expr();