Esempio n. 1
0
 def test_deep_update_dict(self):
     origin_dict = {'a': 1, 'b': {'c': 3, 'd': 4}, 'f': 6}
     override_dict = {'a': 2, 'b': {'c': 33, 'e': 5}, 'g': 7}
     updated_dict = utils.deep_update_dict(origin_dict, override_dict)
     self.assertEqual(
         updated_dict,
         {'a': 2, 'b': {'c': 33, 'd': 4, 'e': 5}, 'f': 6, 'g': 7}
     )
Esempio n. 2
0
 def test_deep_update_dict(self):
     origin_dict = {'a': 1, 'b': {'c': 3, 'd': 4}, 'f': 6}
     override_dict = {'a': 2, 'b': {'c': 33, 'e': 5}, 'g': 7}
     updated_dict = utils.deep_update_dict(origin_dict, override_dict)
     self.assertEqual(
         updated_dict,
         {'a': 2, 'b': {'c': 33, 'd': 4, 'e': 5}, 'f': 6, 'g': 7}
     )
Esempio n. 3
0
    def __update_context_request_config(self, level, config_mapping):
        """
        @param level: testset or testcase
        @param config_type: request
        @param config_mapping: request config mapping
        """
        if level == "testset":
            self.testset_request_config.update(config_mapping)

        self.testcase_request_config = utils.deep_update_dict(
            copy.deepcopy(self.testset_request_config), config_mapping)
Esempio n. 4
0
    def __update_context_request_config(self, level, config_mapping):
        """
        @param level: testset or testcase
        @param config_type: request
        @param config_mapping: request config mapping
        """
        if level == "testset":
            self.testset_request_config.update(config_mapping)

        self.testcase_request_config = utils.deep_update_dict(
            copy.deepcopy(self.testset_request_config),
            config_mapping
        )
Esempio n. 5
0
    def get_parsed_request(self):
        """ get parsed request, with each variable replaced by bind value.
            testcase request shall inherit from testset request configs,
            but can not change testset configs, that's why we use copy.deepcopy here.
        """
        testcase_request_config = utils.deep_update_dict(
            copy.deepcopy(self.testset_config["request"]),
            self.testcase_config["request"])

        parsed_request = testcase.parse_template(
            testcase_request_config, self._get_evaluated_testcase_variables())

        return parsed_request
Esempio n. 6
0
    def get_parsed_request(self, request_dict, level="testcase"):
        """ get parsed request with bind variables and functions.
        @param request_dict: request config mapping
        @param level: testset or testcase
        """
        if level == "testset":
            request_dict = self.testcase_parser.parse_content_with_bindings(
                request_dict)
            self.testset_request_config.update(request_dict)

        testcase_request_config = utils.deep_update_dict(
            copy.deepcopy(self.testset_request_config), request_dict)
        parsed_request = self.testcase_parser.parse_content_with_bindings(
            testcase_request_config)

        return parsed_request