def METHOD_NAME(self, mock_spark_session):
    """Tests HiveToBigQueryTemplate runs with overwrite mode"""
    hive_to_bigquery_template = HiveToBigQueryTemplate()
    mock_parsed_args = hive_to_bigquery_template.parse_args(
        ["--hive.bigquery.input.database=database",
        "--hive.bigquery.input.table=table",
         "--hive.bigquery.output.dataset=dataset",
         "--hive.bigquery.output.table=table",
         "--hive.bigquery.temp.bucket.name=bucket",
         "--hive.bigquery.output.mode=overwrite"])
    mock_spark_session.table.return_value = mock_spark_session.dataframe.DataFrame
    hive_to_bigquery_template.run(mock_spark_session, mock_parsed_args)
    mock_spark_session.table.assert_called_once_with("database.table")
    mock_spark_session.dataframe.DataFrame.write \
        .format.assert_called_once_with(constants.FORMAT_BIGQUERY)
    mock_spark_session.dataframe.DataFrame.write \
        .format() \
        .option.assert_called_once_with(constants.TABLE, "dataset.table")
    mock_spark_session.dataframe.DataFrame.write \
        .format() \
        .option() \
        .option.assert_called_once_with(constants.TEMP_GCS_BUCKET, "bucket")
    mock_spark_session.dataframe.DataFrame.write \
        .format() \
        .option() \
        .option() \
        .mode.assert_called_once_with(constants.OUTPUT_MODE_OVERWRITE)
    mock_spark_session.dataframe.DataFrame.write \
        .format() \
        .option() \
        .option() \
        .mode() \
        .save.assert_called_once()