def METHOD_NAME(
    revision_history: typing.List[str] = None,
    current_revision: str = "",
    db_file_exists: bool = True,
    db_backup_exists: bool = True,
):
    revision_history = revision_history or Constants.revision_history
    def _db_file_exists(file_name: str) -> bool:
        if file_name == mock_db_file_name:
            return db_file_exists
        else:
            return db_backup_exists
    monkeypatch.setattr(os.path, "isfile", _db_file_exists)
    def _current_revision(alembic_config: typing.Any):
        if current_revision != "" and current_revision not in revision_history:
            raise Exception(
                f"Can't locate revision identified by '{current_revision}'"
            )
        alembic_config.print_stdout(current_revision)
    mock_alembic.current = _current_revision
    def _revision_history(alembic_config: typing.Any):
        for revision in revision_history:
            alembic_config.print_stdout(f"none -> {revision}, revision name")
    mock_alembic.history = _revision_history