Example #1
0
    def parse_signature(self, signature):
        """
        This method initializes type parsers for all tested function arguments
        and expected value, basing on test data signature (see get_trait()).

        :param signature: the header from a test data file.
        :type signature: List[str]
        """
        if len(signature) != len(self._param_names) + 1:
            raise RuntimeError("Signature parameter count mismatch")

        signature = [filter_bracket_comments(s) for s in signature]

        self._param_traits = [get_trait(param) for param in signature[:-1]]

        if any(isinstance(p, VoidTrait) for p in self._param_traits):
            raise RuntimeError("Argument can't be of type void")

        self._ret_value_trait = get_trait(signature[-1])
    def parse_signature(self, signature):
        """
        This method initializes type parsers
        for all tested function arguments and expected value,
        basing on test data signature (see get_string_parser_for_type()).

        :param signature: the header from a test data file.
        :type signature: List[str]
        """
        if len(signature) != len(self._param_names) + 1:
            raise RuntimeError("Signature parameter count mismatch")

        signature = [filter_bracket_comments(s) for s in signature]

        for param in signature[:-1]:
            self._param_parsers.append(get_string_parser_for_type(param))

        if any(p is None for p in self._param_parsers):
            raise RuntimeError("Argument can't be of type void")

        self._ret_value_parser = get_string_parser_for_type(signature[-1])
    def parse_signature(self, signature):
        """
        This method initializes type parsers
        for all tested function arguments and expected value,
        basing on test data signature (see get_string_parser_for_type()).

        :param signature: the header from a test data file.
        :type signature: List[str]
        """
        if len(signature) != len(self._param_names) + 1:
            raise RuntimeError("Signature parameter count mismatch")

        signature = [filter_bracket_comments(s) for s in signature]

        for param in signature[:-1]:
            self._param_parsers.append(get_string_parser_for_type(param))

        if any(p is None for p in self._param_parsers):
            raise RuntimeError("Argument can't be of type void")

        self._ret_value_parser = get_string_parser_for_type(signature[-1])