Home / Class/ FlaskCliRunner Class — flask Architecture

FlaskCliRunner Class — flask Architecture

Architecture documentation for the FlaskCliRunner class in testing.py from the flask codebase.

Entity Profile

Dependency Diagram

graph TD
  f9a6411b_4c7f_0b0b_2695_fd4e74ed8af8["FlaskCliRunner"]
  9d1103a6_3809_8e43_8b99_b375b026b496["testing.py"]
  f9a6411b_4c7f_0b0b_2695_fd4e74ed8af8 -->|defined in| 9d1103a6_3809_8e43_8b99_b375b026b496
  57a9be62_fa00_b0ba_ad54_f6d169e11327["__init__()"]
  f9a6411b_4c7f_0b0b_2695_fd4e74ed8af8 -->|method| 57a9be62_fa00_b0ba_ad54_f6d169e11327
  afe2d4ce_87b9_7239_bb5b_c8fe6ec46b0d["invoke()"]
  f9a6411b_4c7f_0b0b_2695_fd4e74ed8af8 -->|method| afe2d4ce_87b9_7239_bb5b_c8fe6ec46b0d

Relationship Graph

Source Code

src/flask/testing.py lines 265–298

class FlaskCliRunner(CliRunner):
    """A :class:`~click.testing.CliRunner` for testing a Flask app's
    CLI commands. Typically created using
    :meth:`~flask.Flask.test_cli_runner`. See :ref:`testing-cli`.
    """

    def __init__(self, app: Flask, **kwargs: t.Any) -> None:
        self.app = app
        super().__init__(**kwargs)

    def invoke(  # type: ignore
        self, cli: t.Any = None, args: t.Any = None, **kwargs: t.Any
    ) -> Result:
        """Invokes a CLI command in an isolated environment. See
        :meth:`CliRunner.invoke <click.testing.CliRunner.invoke>` for
        full method documentation. See :ref:`testing-cli` for examples.

        If the ``obj`` argument is not given, passes an instance of
        :class:`~flask.cli.ScriptInfo` that knows how to load the Flask
        app being tested.

        :param cli: Command object to invoke. Default is the app's
            :attr:`~flask.app.Flask.cli` group.
        :param args: List of strings to invoke the command with.

        :return: a :class:`~click.testing.Result` object.
        """
        if cli is None:
            cli = self.app.cli

        if "obj" not in kwargs:
            kwargs["obj"] = ScriptInfo(create_app=lambda: self.app)

        return super().invoke(cli, args, **kwargs)

Frequently Asked Questions

What is the FlaskCliRunner class?
FlaskCliRunner is a class in the flask codebase, defined in src/flask/testing.py.
Where is FlaskCliRunner defined?
FlaskCliRunner is defined in src/flask/testing.py at line 265.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free