2022-02-07 18:51:49 +01:00
|
|
|
import datahub.emitter.mcp_builder as builder
|
2022-09-10 20:36:10 -07:00
|
|
|
import datahub.metadata.schema_classes as models
|
2022-02-07 18:51:49 +01:00
|
|
|
from datahub.emitter.mce_builder import datahub_guid
|
2022-09-10 20:36:10 -07:00
|
|
|
from datahub.emitter.mcp import MetadataChangeProposalWrapper
|
2022-02-07 18:51:49 +01:00
|
|
|
|
|
|
|
|
|
|
|
def test_guid_generator():
|
|
|
|
key = builder.SchemaKey(
|
2022-03-16 22:57:50 +01:00
|
|
|
database="test", schema="Test", platform="mysql", instance="TestInstance"
|
2022-02-07 18:51:49 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
guid = key.guid()
|
2022-03-16 22:57:50 +01:00
|
|
|
assert guid == "f096b3799fc86a3e5d5d0c083eb1f2a4"
|
2022-02-07 18:51:49 +01:00
|
|
|
|
|
|
|
|
|
|
|
def test_guid_generator_with_empty_instance():
|
|
|
|
key = builder.SchemaKey(
|
2022-03-16 22:57:50 +01:00
|
|
|
database="test",
|
|
|
|
schema="Test",
|
|
|
|
platform="mysql",
|
|
|
|
instance=None,
|
2022-02-07 18:51:49 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
guid = key.guid()
|
|
|
|
assert guid == "693ed953c7192bcf46f8b9db36d71c2b"
|
|
|
|
|
|
|
|
|
2022-03-16 22:57:50 +01:00
|
|
|
def test_guid_generator_with_instance():
|
|
|
|
key = builder.SchemaKey(
|
|
|
|
database="test",
|
|
|
|
schema="Test",
|
|
|
|
platform="mysql",
|
|
|
|
instance="TestInstance",
|
|
|
|
)
|
|
|
|
guid = key.guid()
|
|
|
|
assert guid == "f096b3799fc86a3e5d5d0c083eb1f2a4"
|
|
|
|
|
|
|
|
|
2022-02-07 18:51:49 +01:00
|
|
|
def test_guid_generators():
|
|
|
|
key = builder.SchemaKey(
|
2022-03-16 22:57:50 +01:00
|
|
|
database="test", schema="Test", platform="mysql", instance="TestInstance"
|
2022-02-07 18:51:49 +01:00
|
|
|
)
|
2022-03-16 22:57:50 +01:00
|
|
|
guid_datahub = datahub_guid(key.dict(by_alias=True))
|
2022-02-07 18:51:49 +01:00
|
|
|
|
|
|
|
guid = key.guid()
|
|
|
|
assert guid == guid_datahub
|
2022-09-10 20:36:10 -07:00
|
|
|
|
|
|
|
|
|
|
|
def test_mcpw_inference():
|
|
|
|
mcpw = MetadataChangeProposalWrapper(
|
|
|
|
entityUrn="urn:li:dataset:(urn:li:dataPlatform:bigquery,harshal-playground-306419.test_schema.excess_deaths_derived,PROD)",
|
|
|
|
aspect=models.DomainsClass(domains=["urn:li:domain:health"]),
|
|
|
|
)
|
|
|
|
assert mcpw.entityType == "dataset"
|
|
|
|
assert mcpw.aspectName == "domains"
|