mirror of
https://github.com/datahub-project/datahub.git
synced 2025-07-20 07:58:31 +00:00
43 lines
1.6 KiB
Python
43 lines
1.6 KiB
Python
import unittest
|
|
|
|
from datahub.utilities.urns.data_platform_urn import DataPlatformUrn
|
|
from datahub.utilities.urns.dataset_urn import DatasetUrn
|
|
from datahub.utilities.urns.error import InvalidUrnError
|
|
|
|
|
|
class TestDatasetUrn(unittest.TestCase):
|
|
def test_parse_urn(self) -> None:
|
|
dataset_urn_str = "urn:li:dataset:(urn:li:dataPlatform:abc,def,prod)"
|
|
dataset_urn = DatasetUrn.create_from_string(dataset_urn_str)
|
|
assert (
|
|
dataset_urn.get_data_platform_urn()
|
|
== DataPlatformUrn.create_from_string("urn:li:dataPlatform:abc")
|
|
)
|
|
assert dataset_urn.get_dataset_name() == "def"
|
|
assert dataset_urn.get_env() == "prod"
|
|
assert (
|
|
dataset_urn.__str__() == "urn:li:dataset:(urn:li:dataPlatform:abc,def,prod)"
|
|
)
|
|
assert dataset_urn == DatasetUrn(
|
|
"dataset", ["urn:li:dataPlatform:abc", "def", "prod"]
|
|
)
|
|
|
|
def test_invalid_urn(self) -> None:
|
|
with self.assertRaises(InvalidUrnError):
|
|
DatasetUrn.create_from_string(
|
|
"urn:li:abc:(urn:li:dataPlatform:abc,def,prod)"
|
|
)
|
|
|
|
with self.assertRaises(InvalidUrnError):
|
|
DatasetUrn.create_from_string(
|
|
"urn:li:dataset:(urn:li:user:abc,dataset,prod)"
|
|
)
|
|
|
|
with self.assertRaises(InvalidUrnError):
|
|
DatasetUrn.create_from_string("urn:li:dataset:(urn:li:user:abc,dataset)")
|
|
|
|
with self.assertRaises(InvalidUrnError):
|
|
DatasetUrn.create_from_string(
|
|
"urn:li:dataset:(urn:li:user:abc,dataset,invalidEnv)"
|
|
)
|