def add_column(project: TestProjInfo, table: str, column: str, definition: str):
    """
    Applies updates to a table in a dbt project

    Args:
        project: the dbt project that contains the table
        table: the name of the table without a schema
        column: the name of the new column
        definition: the definition of the new column, e.g. 'varchar(20) default null'
    """
    # BigQuery doesn't like 'varchar' in the definition
    if project.adapter.type() == "bigquery" and "varchar" in definition.lower():
        definition = "string"
    table_name = relation_from_name(project.adapter, table)
    sql = f"""
        alter table {table_name}
        add column {column} {definition}
    """
    project.run_sql(sql)

    Applies updates to a table in a dbt project

    Args:
        project: the dbt project that contains the table
        table: the name of the table without a schema
        column: the name of the new column
        definition: the definition of the new column, e.g. 'varchar(20) default null'
    
tests/functional/adapter/simple_snapshot/common.py