From d1d27b494dececc4e96e608d0bb47fd948d7f959 Mon Sep 17 00:00:00 2001 From: Javier Marín Date: Wed, 14 Jul 2021 04:12:41 +0200 Subject: PhpStan support, consts visibilty and name for tokens (#89) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Added handler to define not found variables Added support for string variables Fixed strings and ints comparison error * Check if variables have scalar types (int, float, string and bool) Better $onVarNotFound logic * Better support for null variables * Better support for null variables * Better support for null variables * Allow null values in `setVar` method * Support for unary positive operator * Add PhpStan config file Fix PhpStan warnings Set consts visibility Add name info to variable tokens for easier debugging Co-authored-by: Javier Marín --- tests/MathTest.php | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'tests') diff --git a/tests/MathTest.php b/tests/MathTest.php index f37d0ec..d086acb 100644 --- a/tests/MathTest.php +++ b/tests/MathTest.php @@ -266,6 +266,17 @@ class MathTest extends TestCase $this->assertEquals(0, $calculator->execute('10 / 0')); } + public function testUnaryOperators() + { + $calculator = new MathExecutor(); + $this->assertEquals(5, $calculator->execute('+5')); + $this->assertEquals(5, $calculator->execute('+(3+2)')); + $this->assertEquals(-5, $calculator->execute('-5')); + $this->assertEquals(5, $calculator->execute('-(-5)')); + $this->assertEquals(-5, $calculator->execute('+(-5)')); + $this->assertEquals(-5, $calculator->execute('-(3+2)')); + } + public function testZeroDivisionException() { $calculator = new MathExecutor(); -- cgit v1.2.3