[limb-svn] r6506 - in 3.x/trunk/limb/macro: src/filters tests/cases

svn at limb-project.com svn at limb-project.com
Thu Nov 8 16:27:16 MSK 2007


Author: serega
Date: 2007-11-08 16:27:15 +0300 (Thu, 08 Nov 2007)
New Revision: 6506
URL: http://fisheye.limb-project.com/changelog/limb/?cs=6506

Added:
   3.x/trunk/limb/macro/src/filters/trim.filter.php
Modified:
   3.x/trunk/limb/macro/tests/cases/lmbMacroFiltersAcceptanceTest.class.php
Log:
-- a bit better test for filters
-- trim filter added

Added: 3.x/trunk/limb/macro/src/filters/trim.filter.php
===================================================================
--- 3.x/trunk/limb/macro/src/filters/trim.filter.php	                        (rev 0)
+++ 3.x/trunk/limb/macro/src/filters/trim.filter.php	2007-11-08 13:27:15 UTC (rev 6506)
@@ -0,0 +1,18 @@
+<?php 
+/**
+ * class lmbMacroTrimFilter.
+ *
+ * @filter trim
+ * @package macro
+ * @version $Id$
+ */ 
+class lmbMacroTrimFilter extends lmbMacroFilter
+{
+  function getValue()
+  {
+    if(!isset($this->params[0]))
+      return 'trim(' . $this->base->getValue() . ')';
+    else
+      return 'trim(' . $this->base->getValue() . ', ' . $this->params[0] . ')';
+  }
+} 

Modified: 3.x/trunk/limb/macro/tests/cases/lmbMacroFiltersAcceptanceTest.class.php
===================================================================
--- 3.x/trunk/limb/macro/tests/cases/lmbMacroFiltersAcceptanceTest.class.php	2007-11-08 13:23:49 UTC (rev 6505)
+++ 3.x/trunk/limb/macro/tests/cases/lmbMacroFiltersAcceptanceTest.class.php	2007-11-08 13:27:15 UTC (rev 6506)
@@ -80,5 +80,16 @@
     $out = $tpl->render();
     $this->assertEqual($out, 'HELLO');
   }
+
+  function testFilterWithPHPCodeInParams()
+  {
+    $code = '{$#var|trim|trim:$#foo . $#bar|uppercase}';
+    $tpl = $this->_createMacroTemplate($code, 'tpl.html');
+    $tpl->set('var', '  #/hello/#  ');
+    $tpl->set('foo', '/');
+    $tpl->set('bar', '#');
+    $out = $tpl->render();
+    $this->assertEqual($out, 'HELLO');
+  }
 }
 



More information about the limb-svn mailing list