def test_evaluate_vars_strangewhitespace(self): self.assertEqual(evaluate_vars('{{ tz}}', {'tz': 'UTC'}), 'UTC')
def test_evaluate_vars_list(self): val = evaluate_vars(['{{ a }}', '{{ b }}'], {'a': '1', 'b': '2'}) self.assertEqual(val, ['1', '2'])
def test_evaluate_vars_list_in_dict(self): val = evaluate_vars({'l': ['{{ a }}', '{{ b }}']}, { 'a': '1', 'b': '2' }) self.assertEqual(val, {'l': ['1', '2']})
def test_evaluate_vars_immersed(self): output = evaluate_vars('content{{a}}content', {'a': 'A'}) self.assertEqual(output, 'contentAcontent')
def test_evaluate_vars_one_char(self): self.assertEqual(evaluate_vars('{{ a }}', {'a': 'letter-A'}), 'letter-A')
def test_evaluate_vars_dict(self): val = evaluate_vars({'timezone': '{{ tz }}'}, {'tz': 'UTC'}) self.assertEqual(val, {'timezone': 'UTC'})
def test_evaluate_vars_missing(self): self.assertEqual(evaluate_vars('{{ tz }}'), '{{ tz }}') self.assertEqual(evaluate_vars('tz: {{ tz }}'), 'tz: {{ tz }}')
def test_evaluate_vars_multiple_newline(self): """ see https://github.com/openwisp/netjsonconfig/issues/55 """ output = evaluate_vars('{{ a }}\n{{ b }}\n', {'a': 'a', 'b': 'b'}) self.assertEqual(output, 'a\nb\n')
def test_evaluate_vars_multiple_space(self): output = evaluate_vars('{{ a }} {{ b }}', {'a': 'a', 'b': 'b'}) self.assertEqual(output, 'a b')
def test_evaluate_vars_list_in_dict(self): val = evaluate_vars({'l': ['{{ a }}', '{{ b }}']}, {'a': '1', 'b': '2'}) self.assertEqual(val, {'l': ['1', '2']})
def test_evaluate_vars_nested_dict(self): val = evaluate_vars({'general': {'timezone': '{{ tz }}'}}, {'tz': 'UTC'}) self.assertEqual(val, {'general': {'timezone': 'UTC'}})
def test_evaluate_vars(self): self.assertEqual(evaluate_vars('{{ tz }}', {'tz': 'UTC'}), 'UTC') self.assertEqual(evaluate_vars('tz: {{ tz }}', {'tz': 'UTC'}), 'tz: UTC')
def test_evaluate_vars_comma(self): output = evaluate_vars('{{ a }},{{ b }}', {'a': 'a', 'b': 'b'}) self.assertEqual(output, 'a,b')
def test_evaluate_vars_multiple_immersed(self): output = evaluate_vars('content{{a}}content{{ b }}content', { 'a': 'A', 'b': 'B' }) self.assertEqual(output, 'contentAcontentBcontent')
def test_evaluate_vars_nested_dict(self): val = evaluate_vars({'general': { 'timezone': '{{ tz }}' }}, {'tz': 'UTC'}) self.assertEqual(val, {'general': {'timezone': 'UTC'}})