def METHOD_NAME(mock_db_dsn, mock_is_file_result):
    mock_db_dsn(Constants.mysql_dsn)
    db_backup = mlrun.api.utils.db.backup.DBBackupUtil(backup_rotation=False)
    db_backup._run_shell_command = unittest.mock.Mock(return_value=0)
    db_backup.backup_database(Constants.backup_file)
    mock_is_file_result(True)
    db_backup.load_database_from_backup(
        Constants.backup_file, Constants.new_backup_file
    )
    backup_file_path = f"{mlconf.httpdb.dirpath}/mysql/{Constants.backup_file}"
    new_backup_file_path = f"{mlconf.httpdb.dirpath}/mysql/{Constants.new_backup_file}"
    run_shell_command_calls = [
        # first backup - backup via the `backup_database` call
        unittest.mock.call(Constants.mysql_backup_command.format(backup_file_path)),
        # second backup - via `load_database_from_backup`, backup the current database before loading backup
        unittest.mock.call(Constants.mysql_backup_command.format(new_backup_file_path)),
        # load from backup
        unittest.mock.call(
            Constants.mysql_load_backup_command.format(backup_file_path)
        ),
    ]
    db_backup._run_shell_command.assert_has_calls(run_shell_command_calls)