mirror of
https://github.com/datahub-project/datahub.git
synced 2025-07-23 09:32:04 +00:00
64 lines
1.9 KiB
Python
64 lines
1.9 KiB
Python
def test_snowflake_uri_default_authentication():
|
|
from datahub.ingestion.source.sql.snowflake import SnowflakeConfig
|
|
|
|
config = SnowflakeConfig.parse_obj(
|
|
{
|
|
"username": "user",
|
|
"password": "password",
|
|
"host_port": "acctname",
|
|
"database": "demo",
|
|
"warehouse": "COMPUTE_WH",
|
|
"role": "sysadmin",
|
|
}
|
|
)
|
|
|
|
assert (
|
|
config.get_sql_alchemy_url()
|
|
== "snowflake://user:password@acctname/?authenticator=SNOWFLAKE&warehouse=COMPUTE_WH&role"
|
|
"=sysadmin&application=acryl_datahub"
|
|
)
|
|
|
|
|
|
def test_snowflake_uri_external_browser_authentication():
|
|
from datahub.ingestion.source.sql.snowflake import SnowflakeConfig
|
|
|
|
config = SnowflakeConfig.parse_obj(
|
|
{
|
|
"username": "user",
|
|
"host_port": "acctname",
|
|
"database": "demo",
|
|
"warehouse": "COMPUTE_WH",
|
|
"role": "sysadmin",
|
|
"authentication_type": "EXTERNAL_BROWSER_AUTHENTICATOR",
|
|
}
|
|
)
|
|
|
|
assert (
|
|
config.get_sql_alchemy_url()
|
|
== "snowflake://user@acctname/?authenticator=EXTERNALBROWSER&warehouse=COMPUTE_WH&role"
|
|
"=sysadmin&application=acryl_datahub"
|
|
)
|
|
|
|
|
|
def test_snowflake_uri_key_pair_authentication():
|
|
from datahub.ingestion.source.sql.snowflake import SnowflakeConfig
|
|
|
|
config = SnowflakeConfig.parse_obj(
|
|
{
|
|
"username": "user",
|
|
"host_port": "acctname",
|
|
"database": "demo",
|
|
"warehouse": "COMPUTE_WH",
|
|
"role": "sysadmin",
|
|
"authentication_type": "KEY_PAIR_AUTHENTICATOR",
|
|
"private_key_path": "/a/random/path",
|
|
"private_key_password": "a_random_password",
|
|
}
|
|
)
|
|
|
|
assert (
|
|
config.get_sql_alchemy_url()
|
|
== "snowflake://user@acctname/?authenticator=SNOWFLAKE_JWT&warehouse=COMPUTE_WH&role"
|
|
"=sysadmin&application=acryl_datahub"
|
|
)
|