Fixing inline expressions evaluation

* In case if internal evaluated value is not a string (e.g. a number) it
  threw coercion exception

Change-Id: I0bf7dd3177a831bc119f75601011fcd8327272be
This commit is contained in:
Renat Akhmerov 2014-04-23 18:18:51 +07:00
parent 11c7f641f4
commit 1ae6af2aca
1 changed files with 3 additions and 1 deletions

View File

@ -87,7 +87,9 @@ class InlineYAQLEvaluator(YAQLEvaluator):
trim_expr = expr.strip("{}")
evaluated = super(InlineYAQLEvaluator,
cls).evaluate(trim_expr, context)
result = result.replace(expr, evaluated or expr)
replacement = str(evaluated) if evaluated else expr
result = result.replace(expr, replacement)
return result