From 4a72e039cb666e6785260ec0af5da0f67b868217 Mon Sep 17 00:00:00 2001 From: Christoph Reiter <reiter.christoph@gmail.com> Date: Wed, 22 Feb 2023 14:17:51 +0100 Subject: [PATCH] tests: add some tests for the new isNullOrEmpty() and also implement it in the helper object --- src/ExpressionLanguage/ExpressionExtension.php | 5 +++++ tests/ExpressionLanguageTest.php | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/src/ExpressionLanguage/ExpressionExtension.php b/src/ExpressionLanguage/ExpressionExtension.php index 4eb5585..a6ee1b9 100644 --- a/src/ExpressionLanguage/ExpressionExtension.php +++ b/src/ExpressionLanguage/ExpressionExtension.php @@ -139,4 +139,9 @@ class ExpressionExtension return $filteredResult; } + + public static function isNullOrEmpty($value) + { + return $value === null || $value === ''; + } } diff --git a/tests/ExpressionLanguageTest.php b/tests/ExpressionLanguageTest.php index ef09df2..b627155 100644 --- a/tests/ExpressionLanguageTest.php +++ b/tests/ExpressionLanguageTest.php @@ -108,6 +108,9 @@ class ExpressionLanguageTest extends TestCase $this->assertSame('foo', $lang->evaluate('substr("foobar", 0, 3)')); $this->assertSame(1, $lang->evaluate('strpos("foobar", "oo")')); $this->assertSame(6, $lang->evaluate('strlen("foobar")')); + $this->assertFalse($lang->evaluate('isNullOrEmpty("foobar")')); + $this->assertTrue($lang->evaluate('isNullOrEmpty(null)')); + $this->assertTrue($lang->evaluate('isNullOrEmpty("")')); $this->assertTrue($lang->evaluate('relay.str_starts_with("foo", "fo")')); $this->assertFalse($lang->evaluate('relay.str_starts_with("foo", "xo")')); @@ -116,5 +119,8 @@ class ExpressionLanguageTest extends TestCase $this->assertSame('foo', $lang->evaluate('relay.substr("foobar", 0, 3)')); $this->assertSame(1, $lang->evaluate('relay.strpos("foobar", "oo")')); $this->assertSame(6, $lang->evaluate('relay.strlen("foobar")')); + $this->assertFalse($lang->evaluate('relay.isNullOrEmpty("foobar")')); + $this->assertTrue($lang->evaluate('relay.isNullOrEmpty(null)')); + $this->assertTrue($lang->evaluate('relay.isNullOrEmpty("")')); } } -- GitLab