MCPcopy
hub / github.com/pytest-dev/pytest / parse_known_and_unknown_args

Method parse_known_and_unknown_args

src/_pytest/config/argparsing.py:156–179  ·  view source on GitHub ↗

Parse the known arguments at this point, and also return the remaining unknown flag arguments. :returns: A tuple containing an argparse namespace object for the known arguments, and a list of unknown flag arguments.

(
        self,
        args: Sequence[str | os.PathLike[str]],
        namespace: argparse.Namespace | None = None,
    )

Source from the content-addressed store, hash-verified

154 return self.parse_known_and_unknown_args(args, namespace=namespace)[0]
155
156 def parse_known_and_unknown_args(
157 self,
158 args: Sequence[str | os.PathLike[str]],
159 namespace: argparse.Namespace | None = None,
160 ) -> tuple[argparse.Namespace, list[str]]:
161 """Parse the known arguments at this point, and also return the
162 remaining unknown flag arguments.
163
164 :returns:
165 A tuple containing an argparse namespace object for the known
166 arguments, and a list of unknown flag arguments.
167 """
168 strargs = [os.fspath(x) for x in args]
169 if sys.version_info < (3, 12, 8) or (3, 13) <= sys.version_info < (3, 13, 1):
170 # Older argparse have a bugged parse_known_intermixed_args.
171 namespace, unknown = self.optparser.parse_known_args(strargs, namespace)
172 assert namespace is not None
173 file_or_dir = getattr(namespace, FILE_OR_DIR)
174 unknown_flags: list[str] = []
175 for arg in unknown:
176 (unknown_flags if arg.startswith("-") else file_or_dir).append(arg)
177 return namespace, unknown_flags
178 else:
179 return self.optparser.parse_known_intermixed_args(strargs, namespace)
180
181 def addini(
182 self,

Calls 3

fspathMethod · 0.80
parse_known_argsMethod · 0.80
appendMethod · 0.80