Skip to content
Snippets Groups Projects
Commit 4a72e039 authored by Reiter, Christoph's avatar Reiter, Christoph :snake:
Browse files

tests: add some tests for the new isNullOrEmpty()

and also implement it in the helper object
parent 034f67e5
Branches expr-lang
No related tags found
1 merge request!210expression language: inject an object providing helper functions/methods
Pipeline #232466 passed
...@@ -139,4 +139,9 @@ class ExpressionExtension ...@@ -139,4 +139,9 @@ class ExpressionExtension
return $filteredResult; return $filteredResult;
} }
public static function isNullOrEmpty($value)
{
return $value === null || $value === '';
}
} }
...@@ -108,6 +108,9 @@ class ExpressionLanguageTest extends TestCase ...@@ -108,6 +108,9 @@ class ExpressionLanguageTest extends TestCase
$this->assertSame('foo', $lang->evaluate('substr("foobar", 0, 3)')); $this->assertSame('foo', $lang->evaluate('substr("foobar", 0, 3)'));
$this->assertSame(1, $lang->evaluate('strpos("foobar", "oo")')); $this->assertSame(1, $lang->evaluate('strpos("foobar", "oo")'));
$this->assertSame(6, $lang->evaluate('strlen("foobar")')); $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->assertTrue($lang->evaluate('relay.str_starts_with("foo", "fo")'));
$this->assertFalse($lang->evaluate('relay.str_starts_with("foo", "xo")')); $this->assertFalse($lang->evaluate('relay.str_starts_with("foo", "xo")'));
...@@ -116,5 +119,8 @@ class ExpressionLanguageTest extends TestCase ...@@ -116,5 +119,8 @@ class ExpressionLanguageTest extends TestCase
$this->assertSame('foo', $lang->evaluate('relay.substr("foobar", 0, 3)')); $this->assertSame('foo', $lang->evaluate('relay.substr("foobar", 0, 3)'));
$this->assertSame(1, $lang->evaluate('relay.strpos("foobar", "oo")')); $this->assertSame(1, $lang->evaluate('relay.strpos("foobar", "oo")'));
$this->assertSame(6, $lang->evaluate('relay.strlen("foobar")')); $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("")'));
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment