From c01913d9c3d36d89cf5105d8ae203c325536e800 Mon Sep 17 00:00:00 2001 From: ptiurin Date: Fri, 2 Feb 2024 17:43:19 +0000 Subject: [PATCH] fix: Make account name optional --- src/firebolt_db/firebolt_dialect.py | 3 ++- tests/unit/test_firebolt_dialect.py | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/firebolt_db/firebolt_dialect.py b/src/firebolt_db/firebolt_dialect.py index 7823d4a..186ea2f 100644 --- a/src/firebolt_db/firebolt_dialect.py +++ b/src/firebolt_db/firebolt_dialect.py @@ -153,7 +153,8 @@ def create_connect_args(self, url: URL) -> Tuple[List, Dict]: additional_parameters = {} if "account_name" in parameters: kwargs["account_name"] = parameters.pop("account_name") - else: + elif isinstance(auth, ClientCredentials): + # account_name is required for client credentials authentication raise ArgumentError( "account_name parameter must be provided to authenticate" ) diff --git a/tests/unit/test_firebolt_dialect.py b/tests/unit/test_firebolt_dialect.py index 361be1b..a3d0fd9 100644 --- a/tests/unit/test_firebolt_dialect.py +++ b/tests/unit/test_firebolt_dialect.py @@ -36,7 +36,6 @@ def test_create_dialect(self, dialect: FireboltDialect): def test_create_connect_args_user_password(self, dialect: FireboltDialect): u = url.make_url( "test_engine://test-sa@user.com:test_password@test_db_name/test_engine_name" - "?account_name=dummy" ) with mock.patch.dict(os.environ, {"FIREBOLT_BASE_URL": "test_url"}): result_list, result_dict = dialect.create_connect_args(u)