From 3f59c22e172a5440ce6b6ceb6919b972e2a32f36 Mon Sep 17 00:00:00 2001 From: Maxime Bourget Date: Sun, 26 May 2013 16:19:37 +0100 Subject: [PATCH] Fix 0 value seen as null bug. and 0 discount. --- includes/textcart_manager.inc | 4 ++-- includes/utilities.inc | 4 ++-- test/textcartManager/processTest.php | 3 +++ 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/includes/textcart_manager.inc b/includes/textcart_manager.inc index 96db207..273065e 100644 --- a/includes/textcart_manager.inc +++ b/includes/textcart_manager.inc @@ -335,7 +335,7 @@ class TextCartManager { $stock_code = ""; $quantity = ""; $price = ""; - $discount = ""; + $discount = null; $date=null; $description = ""; @@ -422,7 +422,7 @@ class TextCartManager { ,"stock_code" => $stock_code ,"quantity" => $quantity ,"price" => $price - ,"discount" => $discount/100.0 + ,"discount" => $discount !== null && $discount !== '' ? $discount/100.0 : null ,"description" => $description ,"date" => $date ); diff --git a/includes/utilities.inc b/includes/utilities.inc index d0319d6..d716610 100644 --- a/includes/utilities.inc +++ b/includes/utilities.inc @@ -27,7 +27,7 @@ function match_criteria($value, $criteria) { function expand_template($template, $value, $default_value=null) { # replace # placeholder #echo "expandind template=$template value=$value default_value=$default_value
"; - if(isset($value) && $value!="") { + if(isset($value) && $value!=="") { if($template) { if(field_value_is_constant($value) == false) { # Value needs to be evaluated (either # or ()) @@ -46,7 +46,7 @@ function expand_template($template, $value, $default_value=null) { #echo " null template=$template value=$value default_value=$default_value
"; } - if(isset($value) && $value!="") { + if(isset($value) && $value!=="") { # now use default value if needed $value = str_replace('@', $default_value, $value); #echo " default template=$template value=$value default_value=$default_value
"; diff --git a/test/textcartManager/processTest.php b/test/textcartManager/processTest.php index 255a6e4..0d2a9fd 100644 --- a/test/textcartManager/processTest.php +++ b/test/textcartManager/processTest.php @@ -35,6 +35,8 @@ class ProcessTest extends PHPUnit_Framework_TestCase { * @dataProvider processNormalExamples */ function testNormalExamples($textcart, $stock_code, $quantity, $price, $discount=null, $description=null) { + + $date = null; // Stubbing mgr $this->mgr->expects($this->any()) ->method('get_default_price') @@ -51,6 +53,7 @@ class ProcessTest extends PHPUnit_Framework_TestCase { ,$this->equalTo($quantity) ,$this->equalTo($price) ,$this->equalTo($discount) + ,$this->equalTo($date) ,$this->equalTo($description)); -- 2.30.2