def test_convert_expression_jinja_st2kv_user(self): expr = '{{ st2kv.user.test.kv }}' result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ st2kv('user.test.kv') }}")
def test_convert_expression_jinja_task_result(self): expr = "{{ task('abc').result.result }}" result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ result().result }}")
def test_convert_expression_jinja_task_result_double_quotes(self): expr = '{{ task("abc").result.double_quote }}' result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ result().double_quote }}")
def test_convert_expression_jinja_context_vars(self): expr = "{{ _.test }}" result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ ctx().test }}")
def test_convert_expression_jinja_context_vars_with_underscore(self): expr = "{{ _.test_.other }}" result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ ctx().test_.other }}")
def test_convert_expression_jinja_st2_api_url(self): expr = '{{ env().st2_action_api_url }}' result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ ctx().st2.api_url }}")
def test_convert_expression_jinja_complex_function_context_vars(self): expr = "{{ zip([0, 1, 2], [3, 4, 5], _.all_the_things) }}" result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ zip([0, 1, 2], [3, 4, 5], ctx().all_the_things) }}")
def test_convert_expression_jinja_function_context_vars(self): expr = "{{ list(range(0, _.count)) }}" result = JinjaExpressionConverter.convert_string(expr) self.assertEquals(result, "{{ list(range(0, ctx().count)) }}")
def test_convert_expression_jinja_context_and_item_vars(self): expr = "{{ _.test + _.test2 - _.long_var }}" result = JinjaExpressionConverter.convert_string(expr, item_vars=['test']) self.assertEquals(result, "{{ item(test) + ctx().test2 - ctx().long_var }}")
def test_convert_expression_jinja_item_vars(self): expr = "{{ _.test }}" result = JinjaExpressionConverter.convert_string(expr, item_vars=['test']) self.assertEquals(result, "{{ item(test) }}")