def METHOD_NAME(rule_runner: PythonRuleRunner) -> None:
    rule_runner.write_files(
        {
            "BUILD": dedent(
                """\
                python_requirement(name='mypy', requirements=['mypy==0.81'])
                python_requirement(name='colors', requirements=['ansicolors'])
                """
            ),
            "mypy-plugins/subdir1/util.py": "",
            "mypy-plugins/subdir1/BUILD": "python_sources(dependencies=['mypy-plugins/subdir2'])",
            "mypy-plugins/subdir2/another_util.py": "",
            "mypy-plugins/subdir2/BUILD": "python_sources()",
            "mypy-plugins/plugin.py": "",
            "mypy-plugins/BUILD": dedent(
                """\
                python_sources(
                    dependencies=['//:mypy', '//:colors', "mypy-plugins/subdir1"]
                )
                """
            ),
        }
    )
    rule_runner.set_options(
        [
            "--source-root-patterns=mypy-plugins",
            "--mypy-source-plugins=mypy-plugins/plugin.py",
        ],
        env_inherit={"PATH", "PYENV_ROOT", "HOME"},
    )
    first_party_plugins = rule_runner.request(MyPyFirstPartyPlugins, [])
    assert first_party_plugins.requirement_strings == FrozenOrderedSet(["ansicolors", "mypy==0.81"])
    assert (
        first_party_plugins.sources_digest
        == rule_runner.make_snapshot(
            {
                "mypy-plugins/plugin.py": "",
                "mypy-plugins/subdir1/util.py": "",
                "mypy-plugins/subdir2/another_util.py": "",
            }
        ).digest
    )
    assert first_party_plugins.source_roots == ("mypy-plugins",)