From 07cb8d1d5522bccd7dc234d666b7493b496ff39f Mon Sep 17 00:00:00 2001 From: debugtalk Date: Sat, 1 Jul 2017 22:31:49 +0800 Subject: [PATCH] add test for get_eval_value --- test/test_context.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/test/test_context.py b/test/test_context.py index 636d6bad..09ba7115 100644 --- a/test/test_context.py +++ b/test/test_context.py @@ -188,3 +188,27 @@ class VariableBindsUnittest(unittest.TestCase): self.assertEqual(len(parsed_request["headers"]["random"]), 5) self.assertIn("data", parsed_request) self.assertEqual(parsed_request["data"], testcase["variable_binds"][2]["data"]) + + def test_get_eval_value(self): + self.context.testcase_variables_mapping = { + "str_1": "str_value1", + "str_2": "str_value2" + } + self.assertEqual(self.context.get_eval_value("${str_1}"), "str_value1") + self.assertEqual(self.context.get_eval_value("${str_2}"), "str_value2") + self.assertEqual( + self.context.get_eval_value(["${str_1}", "str3"]), + ["str_value1", "str3"] + ) + self.assertEqual( + self.context.get_eval_value({"key": "${str_1}"}), + {"key": "str_value1"} + ) + + import random, string + self.context.testcase_config["functions"]["gen_random_string"] = \ + lambda str_len: ''.join(random.choice(string.ascii_letters + string.digits) \ + for _ in range(str_len)) + result = self.context.get_eval_value( + {"func": "gen_random_string", "args": [5]}) + self.assertEqual(len(result), 5)