Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .changes/unreleased/Fixes-20230630-100007.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
kind: Fixes
body: Fix false positive error in semantic model defaults validation
time: 2023-06-30T10:00:07.114321-07:00
custom:
Author: tlento
Issue: None
3 changes: 1 addition & 2 deletions dbt_semantic_interfaces/validations/semantic_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -197,11 +197,10 @@ def validate_manifest(semantic_manifest: SemanticManifestT) -> Sequence[Validati
def _validate_default_agg_time_dimension(semantic_model: SemanticModel) -> List[ValidationIssue]:
issues: List[ValidationIssue] = []

if semantic_model.defaults is None:
if semantic_model.defaults is None or semantic_model.defaults.agg_time_dimension is None:
return []

default_agg_time_dimension = semantic_model.defaults.agg_time_dimension
assert default_agg_time_dimension is not None, "should not be None"

if not SemanticModelValidationHelpers.time_dimension_in_model(
time_dimension_name=default_agg_time_dimension, semantic_model=semantic_model
Expand Down
4 changes: 2 additions & 2 deletions dbt_semantic_interfaces/validations/validator_helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -407,8 +407,8 @@ def __init__(self, issues: Tuple[ValidationIssue, ...]) -> None: # noqa: D
class SemanticModelValidationHelpers:
"""Class containing all the helpers related to semantic model validations."""

@classmethod
def time_dimension_in_model(cls, time_dimension_name: str, semantic_model: SemanticModel) -> bool: # noqa: D
@staticmethod
def time_dimension_in_model(time_dimension_name: str, semantic_model: SemanticModel) -> bool: # noqa: D
for dimension in semantic_model.dimensions:
if dimension.type == DimensionType.TIME and dimension.name == time_dimension_name:
return True
Expand Down