diff --git a/ate/testcase.py b/ate/testcase.py index fc807891..dc586b11 100644 --- a/ate/testcase.py +++ b/ate/testcase.py @@ -49,7 +49,7 @@ def parse_variables(content, variable_mapping): # content contains one or many variables content = content.replace( "${}".format(variable_name), - str(variable_value) + str(variable_value), 1 ) return content diff --git a/tests/test_testcase.py b/tests/test_testcase.py index 137d2527..faef8659 100644 --- a/tests/test_testcase.py +++ b/tests/test_testcase.py @@ -193,6 +193,19 @@ class TestcaseParserUnittest(unittest.TestCase): "/users/100/training/1498?userId=100&data=1498" ) + def test_parse_variables_multiple_identical_variables(self): + variables_binds = { + "user": 100, + "userid": 1000, + "data": 1498 + } + content = "/users/$user/$userid/$data?userId=$userid&data=$data" + self.assertEqual( + testcase.parse_content_with_bindings(content, variables_binds, {}), + "/users/100/1000/1498?userId=1000&data=1498" + ) + + def test_parse_content_with_bindings_functions(self): import random, string functions_binds = {