def METHOD_NAME(
    regex_for_deprecation_comments: Pattern,
    files_with_deprecation_warnings: List[str],
):
    """
    What does this test do and why?
    To ensure that we're appropriately deprecating, we want to test that we're fully
    removing warnings (and the code they correspond to) after two minor versions have passed.
    """
    deployment_version_path: str = file_relative_path(
        __file__, "../great_expectations/deployment_version"
    )
    current_version: str
    with open(deployment_version_path) as f:
        current_version = f.read().strip()
    current_parsed_version: version.Version = cast(
        version.Version, version.parse(current_version)
    )
    current_minor_version: int = current_parsed_version.minor
    unneeded_deprecation_warnings: List[Tuple[str, str]] = []
    for file in files_with_deprecation_warnings:
        with open(file) as f:
            contents = f.read()
        matches: List[str] = regex_for_deprecation_comments.findall(contents)
        for match in matches:
            parsed_version: version.Version = cast(
                version.Version, version.parse(match)
            )
            minor_version: int = parsed_version.minor
            if current_minor_version - minor_version > 2:
                unneeded_deprecation_warning: Tuple[str, str] = (file, match)
                unneeded_deprecation_warnings.append(unneeded_deprecation_warning)
    if unneeded_deprecation_warnings:
        print(
            "\nThe following deprecation warnings must be cleared per the code style guide:"
        )
        for file, version_ in unneeded_deprecation_warnings:
            print(f"{file} - v{version_}")
    # Chetan - 20220316 - Once v0.16.0 lands, this should be cleaned up and made 0.
    if len(unneeded_deprecation_warnings) != UNNEEDED_DEPRECATION_WARNINGS_THRESHOLD:
        raise ValueError(
            f"Found {len(unneeded_deprecation_warnings)} warnings but threshold is {UNNEEDED_DEPRECATION_WARNINGS_THRESHOLD}; please adjust accordingly"
        )