Compare commits

...

1 Commits

Author SHA1 Message Date
Gerda Shank
b6064203e3 Possible method to get model_str from test node 2022-05-04 12:02:22 -04:00
3 changed files with 14 additions and 3 deletions

View File

@@ -1445,9 +1445,9 @@ class TestContext(ProviderContext):
if self.model.resource_type == NodeType.Test and self.model.file_key_name: # type: ignore[union-attr] # noqa
source_file = self.manifest.files[self.model.file_id]
# TODO CT-211
(yaml_key, name) = self.model.file_key_name.split(".") # type: ignore[union-attr] # noqa
name_parts = self.model.file_key_name.split(".") # type: ignore[union-attr] # noqa
# TODO CT-211
source_file.add_env_var(var, yaml_key, name) # type: ignore[union-attr]
source_file.add_env_var(var, name_parts[0], name_parts[1]) # type: ignore[union-attr]
return return_value
else:
msg = f"Env var required but not provided: '{var}'"

View File

@@ -461,6 +461,17 @@ class ParsedGenericTestNode(ParsedNode, HasTestMetadata):
def test_node_type(self):
return "generic"
@property
def get_ref_str(self):
if not self.file_key_name:
return ""
name_parts = self.file_key_name.split(".")
if name_parts[0] == "sources":
target_str = f"source('{name_parts[1]}, {name_parts[2]})"
else:
target_str = f"ref('{name_parts[1]}')"
return f"{{{{ get_where_subquery({target_str}) }}}}"
@dataclass
class IntermediateSnapshotNode(ParsedNode):

View File

@@ -326,7 +326,7 @@ class SchemaParser(SimpleParser[GenericTestBlock, ParsedGenericTestNode]):
tags = sorted(set(itertools.chain(tags, builder.tags())))
if isinstance(target, UnpatchedSourceDefinition):
file_key_name = f"{target.source.yaml_key}.{target.source.name}"
file_key_name = f"{target.source.yaml_key}.{target.source.name}.{target.table.name}"
else:
file_key_name = f"{target.yaml_key}.{target.name}"