Skip to content
This repository was archived by the owner on May 17, 2024. It is now read-only.

Commit ca51e04

Browse files
committed
add test
1 parent 361376e commit ca51e04

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

tests/test_dbt_parser.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,28 @@ def test_set_connection_bigquery_oauth(self):
269269
self.assertEqual(mock_self.connection.get("project"), expected_credentials["project"])
270270
self.assertEqual(mock_self.connection.get("dataset"), expected_credentials["dataset"])
271271

272+
def test_set_connection_bigquery_oauth_sa_impersonation(self):
273+
expected_driver = "bigquery"
274+
expected_credentials = {
275+
"method": "oauth",
276+
"project": "a_project",
277+
"dataset": "a_dataset",
278+
"impersonate_service_account": "a_service_account@yourproject.iam.gserviceaccount.com",
279+
}
280+
mock_self = Mock()
281+
mock_self.get_connection_creds.return_value = (expected_credentials, expected_driver)
282+
283+
DbtParser.set_connection(mock_self)
284+
285+
self.assertIsInstance(mock_self.connection, dict)
286+
self.assertEqual(mock_self.connection.get("driver"), expected_driver)
287+
self.assertEqual(mock_self.connection.get("project"), expected_credentials["project"])
288+
self.assertEqual(mock_self.connection.get("dataset"), expected_credentials["dataset"])
289+
self.assertEqual(
290+
mock_self.connection.get("impersonate_service_account"),
291+
expected_credentials["impersonate_service_account"],
292+
)
293+
272294
def test_set_connection_bigquery_svc_account(self):
273295
expected_driver = "bigquery"
274296
expected_credentials = {

0 commit comments

Comments
 (0)