Skip to content

Commit 493ae52

Browse files
committed
[tests] Fixed unit tests and enabled CI job (qa-checks, unit-tests)
1 parent 8534615 commit 493ae52

24 files changed

Lines changed: 208 additions & 115 deletions

.github/workflows/pyatlan-pr.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,16 +60,16 @@ jobs:
6060
if [ -f requirements.txt ]; then pip install --no-cache-dir -r requirements.txt; fi
6161
if [ -f requirements-dev.txt ]; then pip install --no-cache-dir -r requirements-dev.txt; fi
6262
63-
# - name: QA checks (ruff-format, ruff-lint, mypy)
64-
# run: |
65-
# ./qa-checks
66-
67-
# - name: Run unit tests
68-
# env: # Test tenant environment variables
69-
# ATLAN_API_KEY: ${{ secrets.ATLAN_API_KEY }}
70-
# ATLAN_BASE_URL: ${{ secrets.ATLAN_BASE_URL }}
71-
# # Run with `pytest-sugar` for enhancing the overall test report output
72-
# run: pytest tests/unit --force-sugar
63+
- name: QA checks (ruff-format, ruff-lint, mypy)
64+
run: |
65+
./qa-checks
66+
67+
- name: Run unit tests
68+
env: # Test tenant environment variables
69+
ATLAN_API_KEY: ${{ secrets.ATLAN_API_KEY }}
70+
ATLAN_BASE_URL: ${{ secrets.ATLAN_BASE_URL }}
71+
# Run with `pytest-sugar` for enhancing the overall test report output
72+
run: pytest tests/unit --force-sugar
7373

7474
- name: Prepare integration tests distribution
7575
id: distribute-integration-test-files

pyatlan/model/packages/base/crawler.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from typing import Any, Dict, List, Optional
33

44
from pyatlan import utils
5+
from pyatlan.client.atlan import AtlanClient
56
from pyatlan.errors import ErrorCode
67
from pyatlan.model.assets import Connection
78
from pyatlan.model.packages.base.package import AbstractPackage
@@ -27,6 +28,7 @@ class AbstractCrawler(AbstractPackage):
2728

2829
def __init__(
2930
self,
31+
client: AtlanClient,
3032
connection_name: str,
3133
connection_type: str,
3234
admin_roles: Optional[List[str]] = None,
@@ -38,6 +40,7 @@ def __init__(
3840
source_logo: str = "",
3941
):
4042
super().__init__()
43+
self._client = client
4144
self._connection_name = connection_name
4245
self._connection_type = connection_type
4346
self._admin_roles = admin_roles
@@ -55,6 +58,7 @@ def _get_connection(self) -> Connection:
5558
which will be the target for the package to crawl assets.
5659
"""
5760
connection = Connection.create(
61+
client=self._client,
5862
name=self._connection_name,
5963
connector_type=self._connection_type,
6064
admin_roles=self._admin_roles,

pyatlan/model/packages/big_query_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from typing import Dict, List, Optional
44

5+
from pyatlan.client.atlan import AtlanClient
56
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
67
from pyatlan.model.packages.base.crawler import AbstractCrawler
78
from pyatlan.model.workflow import WorkflowMetadata
@@ -32,6 +33,7 @@ class BigQueryCrawler(AbstractCrawler):
3233

3334
def __init__(
3435
self,
36+
client: AtlanClient,
3537
connection_name: str,
3638
admin_roles: Optional[List[str]] = None,
3739
admin_groups: Optional[List[str]] = None,
@@ -42,6 +44,7 @@ def __init__(
4244
):
4345
self._advanced_config = False
4446
super().__init__(
47+
client=client,
4548
connection_name=connection_name,
4649
connection_type=self._CONNECTOR_TYPE,
4750
admin_roles=admin_roles,

pyatlan/model/packages/confluent_kafka_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from typing import List, Optional
44

5+
from pyatlan.client.atlan import AtlanClient
56
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
67
from pyatlan.model.packages.base.crawler import AbstractCrawler
78
from pyatlan.model.workflow import WorkflowMetadata
@@ -32,6 +33,7 @@ class ConfluentKafkaCrawler(AbstractCrawler):
3233

3334
def __init__(
3435
self,
36+
client: AtlanClient,
3537
connection_name: str,
3638
admin_roles: Optional[List[str]] = None,
3739
admin_groups: Optional[List[str]] = None,
@@ -41,6 +43,7 @@ def __init__(
4143
row_limit: int = 0,
4244
):
4345
super().__init__(
46+
client=client,
4447
connection_name=connection_name,
4548
connection_type=self._CONNECTOR_TYPE,
4649
admin_roles=admin_roles,

pyatlan/model/packages/databricks_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from enum import Enum
44
from typing import List, Optional
55

6+
from pyatlan.client.atlan import AtlanClient
67
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
78
from pyatlan.model.packages.base.crawler import AbstractCrawler
89
from pyatlan.model.workflow import WorkflowMetadata
@@ -37,6 +38,7 @@ class ExtractionMethod(str, Enum):
3738

3839
def __init__(
3940
self,
41+
client: AtlanClient,
4042
connection_name: str,
4143
admin_roles: Optional[List[str]] = None,
4244
admin_groups: Optional[List[str]] = None,
@@ -47,6 +49,7 @@ def __init__(
4749
):
4850
self._advanced_config = False
4951
super().__init__(
52+
client=client,
5053
connection_name=connection_name,
5154
connection_type=self._CONNECTOR_TYPE,
5255
admin_roles=admin_roles,

pyatlan/model/packages/dbt_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from typing import List, Optional
44

5+
from pyatlan.client.atlan import AtlanClient
56
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
67
from pyatlan.model.packages.base.crawler import AbstractCrawler
78
from pyatlan.model.workflow import WorkflowMetadata
@@ -32,6 +33,7 @@ class DbtCrawler(AbstractCrawler):
3233

3334
def __init__(
3435
self,
36+
client: AtlanClient,
3537
connection_name: str,
3638
admin_roles: Optional[List[str]] = None,
3739
admin_groups: Optional[List[str]] = None,
@@ -41,6 +43,7 @@ def __init__(
4143
row_limit: int = 0,
4244
):
4345
super().__init__(
46+
client=client,
4447
connection_name=connection_name,
4548
connection_type=self._CONNECTOR_TYPE,
4649
admin_roles=admin_roles,

pyatlan/model/packages/dynamo_d_b_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from typing import List, Optional
44

5+
from pyatlan.client.atlan import AtlanClient
56
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
67
from pyatlan.model.packages.base.crawler import AbstractCrawler
78
from pyatlan.model.workflow import WorkflowMetadata
@@ -32,6 +33,7 @@ class DynamoDBCrawler(AbstractCrawler):
3233

3334
def __init__(
3435
self,
36+
client: AtlanClient,
3537
connection_name: str,
3638
admin_roles: Optional[List[str]] = None,
3739
admin_groups: Optional[List[str]] = None,
@@ -41,6 +43,7 @@ def __init__(
4143
row_limit: int = 10000,
4244
):
4345
super().__init__(
46+
client=client,
4447
connection_name=connection_name,
4548
connection_type=self._CONNECTOR_TYPE,
4649
admin_roles=admin_roles,

pyatlan/model/packages/glue_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from json import dumps
44
from typing import List, Optional
55

6+
from pyatlan.client.atlan import AtlanClient
67
from pyatlan.errors import ErrorCode
78
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
89
from pyatlan.model.packages.base.crawler import AbstractCrawler
@@ -39,6 +40,7 @@ class GlueCrawler(AbstractCrawler):
3940

4041
def __init__(
4142
self,
43+
client: AtlanClient,
4244
connection_name: str,
4345
admin_roles: Optional[List[str]] = None,
4446
admin_groups: Optional[List[str]] = None,
@@ -48,6 +50,7 @@ def __init__(
4850
row_limit: int = 0,
4951
):
5052
super().__init__(
53+
client=client,
5154
connection_name=connection_name,
5255
connection_type=self._CONNECTOR_TYPE,
5356
admin_roles=admin_roles,

pyatlan/model/packages/mongodb_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from typing import Dict, List, Optional
44

5+
from pyatlan.client.atlan import AtlanClient
56
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
67
from pyatlan.model.packages.base.crawler import AbstractCrawler
78
from pyatlan.model.workflow import WorkflowMetadata
@@ -32,6 +33,7 @@ class MongoDBCrawler(AbstractCrawler):
3233

3334
def __init__(
3435
self,
36+
client: AtlanClient,
3537
connection_name: str,
3638
admin_roles: Optional[List[str]] = None,
3739
admin_groups: Optional[List[str]] = None,
@@ -41,6 +43,7 @@ def __init__(
4143
row_limit: int = 10000,
4244
):
4345
super().__init__(
46+
client=client,
4447
connection_name=connection_name,
4548
connection_type=self._CONNECTOR_TYPE,
4649
admin_roles=admin_roles,

pyatlan/model/packages/oracle_crawler.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from json import dumps
55
from typing import Any, Dict, List, Optional
66

7+
from pyatlan.client.atlan import AtlanClient
78
from pyatlan.model.enums import AtlanConnectorType, WorkflowPackage
89
from pyatlan.model.packages.base.crawler import AbstractCrawler
910
from pyatlan.model.workflow import WorkflowMetadata
@@ -58,6 +59,7 @@ class SecretStore(str, Enum):
5859

5960
def __init__(
6061
self,
62+
client: AtlanClient,
6163
connection_name: str,
6264
admin_roles: Optional[List[str]] = None,
6365
admin_groups: Optional[List[str]] = None,
@@ -69,6 +71,7 @@ def __init__(
6971
self._advanced_config = False
7072
self._agent_config = False
7173
super().__init__(
74+
client=client,
7275
connection_name=connection_name,
7376
connection_type=self._CONNECTOR_TYPE,
7477
admin_roles=admin_roles,

0 commit comments

Comments
 (0)