Fixed a bug in constant folding of keyword arguments to filter calls.  Thanks noskolo.

--HG--
branch : trunk
diff --git a/jinja2/nodes.py b/jinja2/nodes.py
index 034becf..ec2ed3e 100644
--- a/jinja2/nodes.py
+++ b/jinja2/nodes.py
@@ -464,6 +464,9 @@
     """A key, value pair for keyword arguments where key is a string."""
     fields = ('key', 'value')
 
+    def as_const(self):
+        return self.key, self.value.as_const()
+
 
 class CondExpr(Expr):
     """A conditional expression (inline if expression).  (``{{
diff --git a/tests/test_old_bugs.py b/tests/test_old_bugs.py
new file mode 100644
index 0000000..08db225
--- /dev/null
+++ b/tests/test_old_bugs.py
@@ -0,0 +1,18 @@
+# -*- coding: utf-8 -*-
+"""
+    Tests for old bugs
+    ~~~~~~~~~~~~~~~~~~
+
+    Unittest that test situations caused by various older bugs.
+
+    :copyright: Copyright 2008 by Armin Ronacher.
+    :license: BSD.
+"""
+from jinja2 import Environment
+
+def test_keyword_folding():
+    env = Environment()
+    env.filters['testing'] = lambda value, some: value + some
+    assert env.from_string("{{ 'test'|testing(some='stuff') }}") \
+           .render() == 'teststuff'
+