Skip to content

Commit

Permalink
Add abs filter
Browse files Browse the repository at this point in the history
including unit test and documentation
  • Loading branch information
maartendekeizer committed May 28, 2012
1 parent 45d0f6f commit f0a0036
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 0 deletions.
18 changes: 18 additions & 0 deletions doc/filters/abs.rst
@@ -0,0 +1,18 @@
``abs``
=======

The ``abs`` filter returns the absolute value.

.. code-block:: jinja
{# number = -5 #}
{{ number|abs }}
{# outputs 5 #}
.. note::

Internally, Twig uses the PHP `abs`_ function.

.. _`abs`: http://php.net/abs
1 change: 1 addition & 0 deletions lib/Twig/Extension/Core.php
Expand Up @@ -126,6 +126,7 @@ public function getFilters()
'format' => new Twig_Filter_Function('sprintf'),
'replace' => new Twig_Filter_Function('strtr'),
'number_format' => new Twig_Filter_Function('twig_number_format_filter', array('needs_environment' => true)),
'abs' => new Twig_Filter_Function('abs'),

// encoding
'url_encode' => new Twig_Filter_Function('twig_urlencode_filter'),
Expand Down
30 changes: 30 additions & 0 deletions test/Twig/Tests/Fixtures/filters/abs.test
@@ -0,0 +1,30 @@
--TEST--
"abs" filter
--TEMPLATE--
{{ (-5.5)|abs }}
{{ (-5)|abs }}
{{ (-0)|abs }}
{{ 0|abs }}
{{ 5|abs }}
{{ 5.5|abs }}
{{ number1|abs }}
{{ number2|abs }}
{{ number3|abs }}
{{ number4|abs }}
{{ number5|abs }}
{{ number6|abs }}
--DATA--
return array('number1' => -5.5, 'number2' => -5, 'number3' => -0, 'number4' => 0, 'number5' => 5, 'number6' => 5.5)
--EXPECT--
5.5
5
0
0
5
5.5
5.5
5
0
0
5
5.5

0 comments on commit f0a0036

Please sign in to comment.