diff --git a/metricflow/test/fixtures/sql_fixtures.py b/metricflow/test/fixtures/sql_fixtures.py
index f5aa09f233..3a46c97b2d 100644
--- a/metricflow/test/fixtures/sql_fixtures.py
+++ b/metricflow/test/fixtures/sql_fixtures.py
@@ -2,9 +2,22 @@
import pytest
+from metricflow.model.semantic_manifest_lookup import SemanticManifestLookup
+from metricflow.plan_conversion.column_resolver import DunderColumnAssociationResolver
+from metricflow.plan_conversion.dataflow_to_sql import DataflowToSqlQueryPlanConverter
from metricflow.sql.render.sql_plan_renderer import DefaultSqlQueryPlanRenderer, SqlQueryPlanRenderer
@pytest.fixture
def default_sql_plan_renderer() -> SqlQueryPlanRenderer: # noqa: D
return DefaultSqlQueryPlanRenderer()
+
+
+@pytest.fixture(scope="session")
+def dataflow_to_sql_converter( # noqa: D
+ simple_semantic_manifest_lookup: SemanticManifestLookup,
+) -> DataflowToSqlQueryPlanConverter:
+ return DataflowToSqlQueryPlanConverter(
+ column_association_resolver=DunderColumnAssociationResolver(simple_semantic_manifest_lookup),
+ semantic_manifest_lookup=simple_semantic_manifest_lookup,
+ )
diff --git a/metricflow/test/generate_snapshots.py b/metricflow/test/generate_snapshots.py
index 5b74236428..ceb1568e84 100644
--- a/metricflow/test/generate_snapshots.py
+++ b/metricflow/test/generate_snapshots.py
@@ -121,8 +121,8 @@ def run_tests(test_configuration: MetricFlowTestConfiguration) -> None: # noqa:
os.environ["MF_SQL_ENGINE_PASSWORD"] = test_configuration.credential_set.engine_password
if test_configuration.engine is SqlEngine.DUCKDB:
- # Can't use --use-persistent-source-schema with duckdb since it's in memory.
- run_command(f"pytest -x -vv -n 4 --overwrite-snapshots -m '{SQL_ENGINE_SNAPSHOT_MARKER_NAME}' {TEST_DIRECTORY}")
+ # DuckDB is fast, so generate all snapshots, including the engine-agnostic ones
+ run_command(f"pytest -x -vv -n 4 --overwrite-snapshots -k 'not itest' {TEST_DIRECTORY}")
elif (
test_configuration.engine is SqlEngine.REDSHIFT
or test_configuration.engine is SqlEngine.SNOWFLAKE
diff --git a/metricflow/test/plan_conversion/conftest.py b/metricflow/test/plan_conversion/conftest.py
deleted file mode 100644
index b917d0caae..0000000000
--- a/metricflow/test/plan_conversion/conftest.py
+++ /dev/null
@@ -1,17 +0,0 @@
-from __future__ import annotations
-
-import pytest
-
-from metricflow.model.semantic_manifest_lookup import SemanticManifestLookup
-from metricflow.plan_conversion.column_resolver import DunderColumnAssociationResolver
-from metricflow.plan_conversion.dataflow_to_sql import DataflowToSqlQueryPlanConverter
-
-
-@pytest.fixture(scope="session")
-def dataflow_to_sql_converter( # noqa: D
- simple_semantic_manifest_lookup: SemanticManifestLookup,
-) -> DataflowToSqlQueryPlanConverter:
- return DataflowToSqlQueryPlanConverter(
- column_association_resolver=DunderColumnAssociationResolver(simple_semantic_manifest_lookup),
- semantic_manifest_lookup=simple_semantic_manifest_lookup,
- )
diff --git a/metricflow/test/plan_conversion/test_dataflow_to_sql_plan.py b/metricflow/test/plan_conversion/test_dataflow_to_sql_plan.py
index c1d5ede691..4c4d143e44 100644
--- a/metricflow/test/plan_conversion/test_dataflow_to_sql_plan.py
+++ b/metricflow/test/plan_conversion/test_dataflow_to_sql_plan.py
@@ -31,8 +31,6 @@
from metricflow.dataflow.dataflow_plan_to_text import dataflow_plan_as_text
from metricflow.dataset.dataset import DataSet
from metricflow.filters.time_constraint import TimeRangeConstraint
-from metricflow.model.semantic_manifest_lookup import SemanticManifestLookup
-from metricflow.plan_conversion.column_resolver import DunderColumnAssociationResolver
from metricflow.plan_conversion.dataflow_to_sql import DataflowToSqlQueryPlanConverter
from metricflow.protocols.sql_client import SqlClient
from metricflow.specs.column_assoc import ColumnAssociationResolver
@@ -60,26 +58,6 @@
from metricflow.time.date_part import DatePart
-@pytest.fixture(scope="session")
-def multihop_dataflow_to_sql_converter( # noqa: D
- multi_hop_join_semantic_manifest_lookup: SemanticManifestLookup,
-) -> DataflowToSqlQueryPlanConverter:
- return DataflowToSqlQueryPlanConverter(
- column_association_resolver=DunderColumnAssociationResolver(multi_hop_join_semantic_manifest_lookup),
- semantic_manifest_lookup=multi_hop_join_semantic_manifest_lookup,
- )
-
-
-@pytest.fixture(scope="session")
-def scd_dataflow_to_sql_converter( # noqa: D
- scd_semantic_manifest_lookup: SemanticManifestLookup,
-) -> DataflowToSqlQueryPlanConverter:
- return DataflowToSqlQueryPlanConverter(
- column_association_resolver=DunderColumnAssociationResolver(scd_semantic_manifest_lookup),
- semantic_manifest_lookup=scd_semantic_manifest_lookup,
- )
-
-
def convert_and_check(
request: FixtureRequest,
mf_test_session_state: MetricFlowTestSessionState,
@@ -790,46 +768,6 @@ def test_compute_metrics_node_ratio_from_single_semantic_model(
)
-@pytest.mark.sql_engine_snapshot
-def test_compute_metrics_node_ratio_from_multiple_semantic_models(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests the compute metrics node for ratio type metrics.
-
- This test exercises the functionality provided in JoinAggregatedMeasuresByGroupByColumnsNode for
- merging multiple measures into a single input source for final metrics computation.
- """
- dimension_spec = DimensionSpec(
- element_name="country_latest",
- entity_links=(EntityReference(element_name="listing"),),
- )
- time_dimension_spec = TimeDimensionSpec(
- element_name="ds",
- entity_links=(),
- )
- metric_spec = MetricSpec(element_name="bookings_per_view")
-
- dataflow_plan = dataflow_plan_builder.build_plan(
- query_spec=MetricFlowQuerySpec(
- metric_specs=(metric_spec,),
- dimension_specs=(dimension_spec,),
- time_dimension_specs=(time_dimension_spec,),
- ),
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
@pytest.mark.sql_engine_snapshot
def test_order_by_node(
request: FixtureRequest,
@@ -895,76 +833,96 @@ def test_order_by_node(
@pytest.mark.sql_engine_snapshot
-def test_multihop_node(
+def test_semi_additive_join_node(
request: FixtureRequest,
mf_test_session_state: MetricFlowTestSessionState,
- multihop_dataflow_plan_builder: DataflowPlanBuilder,
- multihop_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ consistent_id_object_repository: ConsistentIdObjectRepository,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
sql_client: SqlClient,
) -> None:
- """Tests converting a dataflow plan to a SQL query plan where there is a join between 1 measure and 2 dimensions."""
- dataflow_plan = multihop_dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="txn_count"),),
- dimension_specs=(
- DimensionSpec(
- element_name="customer_name",
- entity_links=(
- EntityReference(element_name="account_id"),
- EntityReference(element_name="customer_id"),
- ),
- ),
- ),
- )
+ """Tests converting a dataflow plan to a SQL query plan using a SemiAdditiveJoinNode."""
+ non_additive_dimension_spec = NonAdditiveDimensionSpec(name="ds", window_choice=AggregationType.MIN)
+ time_dimension_spec = TimeDimensionSpec(element_name="ds", entity_links=())
+
+ measure_source_node = consistent_id_object_repository.simple_model_read_nodes["accounts_source"]
+ semi_additive_join_node = SemiAdditiveJoinNode(
+ parent_node=measure_source_node,
+ entity_specs=tuple(),
+ time_dimension_spec=time_dimension_spec,
+ agg_by_function=non_additive_dimension_spec.window_choice,
)
convert_and_check(
request=request,
mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=multihop_dataflow_to_sql_converter,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
+ node=semi_additive_join_node,
)
@pytest.mark.sql_engine_snapshot
-def test_filter_with_where_constraint_on_join_dim(
+def test_semi_additive_join_node_with_queried_group_by(
request: FixtureRequest,
mf_test_session_state: MetricFlowTestSessionState,
- column_association_resolver: ColumnAssociationResolver,
- dataflow_plan_builder: DataflowPlanBuilder,
+ consistent_id_object_repository: ConsistentIdObjectRepository,
dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests converting a dataflow plan to a SQL query plan using a SemiAdditiveJoinNode."""
+ non_additive_dimension_spec = NonAdditiveDimensionSpec(name="ds", window_choice=AggregationType.MIN)
+ time_dimension_spec = TimeDimensionSpec(element_name="ds", entity_links=())
+ queried_time_dimension_spec = TimeDimensionSpec(
+ element_name="ds", entity_links=(), time_granularity=TimeGranularity.WEEK
+ )
+
+ measure_source_node = consistent_id_object_repository.simple_model_read_nodes["accounts_source"]
+ semi_additive_join_node = SemiAdditiveJoinNode(
+ parent_node=measure_source_node,
+ entity_specs=tuple(),
+ time_dimension_spec=time_dimension_spec,
+ agg_by_function=non_additive_dimension_spec.window_choice,
+ queried_time_dimension_spec=queried_time_dimension_spec,
+ )
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=semi_additive_join_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_semi_additive_join_node_with_grouping(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
consistent_id_object_repository: ConsistentIdObjectRepository,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
sql_client: SqlClient,
) -> None:
- """Tests converting a dataflow plan to a SQL query plan where there is a join between 1 measure and 2 dimensions."""
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings"),),
- dimension_specs=(
- DimensionSpec(
- element_name="is_instant",
- entity_links=(),
- ),
- ),
- where_constraint=(
- WhereSpecFactory(
- column_association_resolver=column_association_resolver,
- ).create_from_where_filter(
- PydanticWhereFilter(
- where_sql_template="{{ Dimension('listing__country_latest') }} = 'us'",
- )
- )
- ),
- )
+ """Tests converting a dataflow plan to a SQL query plan using a SemiAdditiveJoinNode with a window_grouping."""
+ non_additive_dimension_spec = NonAdditiveDimensionSpec(
+ name="ds",
+ window_choice=AggregationType.MAX,
+ window_groupings=("user",),
)
+ entity_spec = LinklessEntitySpec(element_name="user", entity_links=())
+ time_dimension_spec = TimeDimensionSpec(element_name="ds", entity_links=())
+ measure_source_node = consistent_id_object_repository.simple_model_read_nodes["accounts_source"]
+ semi_additive_join_node = SemiAdditiveJoinNode(
+ parent_node=measure_source_node,
+ entity_specs=(entity_spec,),
+ time_dimension_spec=time_dimension_spec,
+ agg_by_function=non_additive_dimension_spec.window_choice,
+ )
convert_and_check(
request=request,
mf_test_session_state=mf_test_session_state,
dataflow_to_sql_converter=dataflow_to_sql_converter,
sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
+ node=semi_additive_join_node,
)
@@ -1013,6 +971,46 @@ def test_constrain_time_range_node(
)
+@pytest.mark.sql_engine_snapshot
+def test_compute_metrics_node_ratio_from_multiple_semantic_models(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests the compute metrics node for ratio type metrics.
+
+ This test exercises the functionality provided in JoinAggregatedMeasuresByGroupByColumnsNode for
+ merging multiple measures into a single input source for final metrics computation.
+ """
+ dimension_spec = DimensionSpec(
+ element_name="country_latest",
+ entity_links=(EntityReference(element_name="listing"),),
+ )
+ time_dimension_spec = TimeDimensionSpec(
+ element_name="ds",
+ entity_links=(),
+ )
+ metric_spec = MetricSpec(element_name="bookings_per_view")
+
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ query_spec=MetricFlowQuerySpec(
+ metric_specs=(metric_spec,),
+ dimension_specs=(dimension_spec,),
+ time_dimension_specs=(time_dimension_spec,),
+ ),
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
@pytest.mark.sql_engine_snapshot
def test_cumulative_metric(
request: FixtureRequest,
@@ -1212,100 +1210,17 @@ def test_cumulative_metric_grain_to_date(
@pytest.mark.sql_engine_snapshot
-def test_partitioned_join(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- consistent_id_object_repository: ConsistentIdObjectRepository,
- sql_client: SqlClient,
-) -> None:
- """Tests converting a dataflow plan where there's a join on a partitioned dimension."""
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="identity_verifications"),),
- dimension_specs=(
- DimensionSpec(
- element_name="home_state",
- entity_links=(EntityReference(element_name="user"),),
- ),
- ),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_limit_rows( # noqa: D
+def test_derived_metric( # noqa: D
request: FixtureRequest,
mf_test_session_state: MetricFlowTestSessionState,
dataflow_plan_builder: DataflowPlanBuilder,
dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
sql_client: SqlClient,
) -> None:
- """Tests a plan with a limit to the number of rows returned."""
dataflow_plan = dataflow_plan_builder.build_plan(
MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings"),),
- time_dimension_specs=(
- TimeDimensionSpec(
- element_name="ds",
- entity_links=(),
- ),
- ),
- limit=1,
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_distinct_values( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- column_association_resolver: ColumnAssociationResolver,
- sql_client: SqlClient,
-) -> None:
- """Tests a plan to get distinct values for a dimension."""
- dataflow_plan = dataflow_plan_builder.build_plan_for_distinct_values(
- query_spec=MetricFlowQuerySpec(
- dimension_specs=(
- DimensionSpec(element_name="country_latest", entity_links=(EntityReference(element_name="listing"),)),
- ),
- where_constraint=(
- WhereSpecFactory(
- column_association_resolver=column_association_resolver,
- ).create_from_where_filter(
- PydanticWhereFilter(
- where_sql_template="{{ Dimension('listing__country_latest') }} = 'us'",
- )
- )
- ),
- order_by_specs=(
- OrderBySpec(
- instance_spec=DimensionSpec(
- element_name="country_latest", entity_links=(EntityReference(element_name="listing"),)
- ),
- descending=True,
- ),
- ),
- limit=100,
+ metric_specs=(MetricSpec(element_name="non_referred_bookings_pct"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
)
)
@@ -1319,7 +1234,7 @@ def test_distinct_values( # noqa: D
@pytest.mark.sql_engine_snapshot
-def test_local_dimension_using_local_entity( # noqa: D
+def test_nested_derived_metric( # noqa: D
request: FixtureRequest,
mf_test_session_state: MetricFlowTestSessionState,
dataflow_plan_builder: DataflowPlanBuilder,
@@ -1328,13 +1243,8 @@ def test_local_dimension_using_local_entity( # noqa: D
) -> None:
dataflow_plan = dataflow_plan_builder.build_plan(
MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="listings"),),
- dimension_specs=(
- DimensionSpec(
- element_name="country_latest",
- entity_links=(EntityReference(element_name="listing"),),
- ),
- ),
+ metric_specs=(MetricSpec(element_name="instant_plus_non_referred_bookings_pct"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
)
)
@@ -1347,384 +1257,6 @@ def test_local_dimension_using_local_entity( # noqa: D
)
-@pytest.mark.sql_engine_snapshot
-def test_semi_additive_join_node(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- consistent_id_object_repository: ConsistentIdObjectRepository,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests converting a dataflow plan to a SQL query plan using a SemiAdditiveJoinNode."""
- non_additive_dimension_spec = NonAdditiveDimensionSpec(name="ds", window_choice=AggregationType.MIN)
- time_dimension_spec = TimeDimensionSpec(element_name="ds", entity_links=())
-
- measure_source_node = consistent_id_object_repository.simple_model_read_nodes["accounts_source"]
- semi_additive_join_node = SemiAdditiveJoinNode(
- parent_node=measure_source_node,
- entity_specs=tuple(),
- time_dimension_spec=time_dimension_spec,
- agg_by_function=non_additive_dimension_spec.window_choice,
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=semi_additive_join_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_semi_additive_join_node_with_queried_group_by(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- consistent_id_object_repository: ConsistentIdObjectRepository,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests converting a dataflow plan to a SQL query plan using a SemiAdditiveJoinNode."""
- non_additive_dimension_spec = NonAdditiveDimensionSpec(name="ds", window_choice=AggregationType.MIN)
- time_dimension_spec = TimeDimensionSpec(element_name="ds", entity_links=())
- queried_time_dimension_spec = TimeDimensionSpec(
- element_name="ds", entity_links=(), time_granularity=TimeGranularity.WEEK
- )
-
- measure_source_node = consistent_id_object_repository.simple_model_read_nodes["accounts_source"]
- semi_additive_join_node = SemiAdditiveJoinNode(
- parent_node=measure_source_node,
- entity_specs=tuple(),
- time_dimension_spec=time_dimension_spec,
- agg_by_function=non_additive_dimension_spec.window_choice,
- queried_time_dimension_spec=queried_time_dimension_spec,
- )
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=semi_additive_join_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_semi_additive_join_node_with_grouping(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- consistent_id_object_repository: ConsistentIdObjectRepository,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests converting a dataflow plan to a SQL query plan using a SemiAdditiveJoinNode with a window_grouping."""
- non_additive_dimension_spec = NonAdditiveDimensionSpec(
- name="ds",
- window_choice=AggregationType.MAX,
- window_groupings=("user",),
- )
- entity_spec = LinklessEntitySpec(element_name="user", entity_links=())
- time_dimension_spec = TimeDimensionSpec(element_name="ds", entity_links=())
-
- measure_source_node = consistent_id_object_repository.simple_model_read_nodes["accounts_source"]
- semi_additive_join_node = SemiAdditiveJoinNode(
- parent_node=measure_source_node,
- entity_specs=(entity_spec,),
- time_dimension_spec=time_dimension_spec,
- agg_by_function=non_additive_dimension_spec.window_choice,
- )
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=semi_additive_join_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_measure_constraint( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="lux_booking_value_rate_expr"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_measure_constraint_with_reused_measure( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="instant_booking_value_ratio"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_measure_constraint_with_single_expr_and_alias( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="double_counted_delayed_bookings"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_derived_metric( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="non_referred_bookings_pct"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_nested_derived_metric( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="instant_plus_non_referred_bookings_pct"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_join_to_scd_dimension(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- scd_column_association_resolver: ColumnAssociationResolver,
- scd_dataflow_plan_builder: DataflowPlanBuilder,
- scd_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests conversion of a plan using a dimension with a validity window inside a measure constraint."""
- dataflow_plan = scd_dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(
- MetricSpec(
- element_name="family_bookings",
- constraint=(
- WhereSpecFactory(
- column_association_resolver=scd_column_association_resolver,
- ).create_from_where_filter(
- PydanticWhereFilter(
- where_sql_template="{{ Dimension('listing__capacity') }} > 2",
- )
- )
- ),
- ),
- ),
- time_dimension_specs=(MTD_SPEC_DAY,),
- ),
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=scd_dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_multi_hop_through_scd_dimension(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- scd_dataflow_plan_builder: DataflowPlanBuilder,
- scd_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests conversion of a plan using a dimension that is reached through an SCD table."""
- dataflow_plan = scd_dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- dimension_specs=(DimensionSpec.from_name(name="listing__user__home_state_latest"),),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=scd_dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_multi_hop_to_scd_dimension(
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- scd_dataflow_plan_builder: DataflowPlanBuilder,
- scd_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- """Tests conversion of a plan using an SCD dimension that is reached through another table."""
- dataflow_plan = scd_dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings"),),
- time_dimension_specs=(MTD_SPEC_DAY,),
- dimension_specs=(DimensionSpec.from_name(name="listing__lux_listing__is_confirmed_lux"),),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=scd_dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_multiple_metrics_no_dimensions( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings"), MetricSpec(element_name="listings")),
- time_range_constraint=TimeRangeConstraint(
- start_time=as_datetime("2020-01-01"), end_time=as_datetime("2020-01-01")
- ),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_metric_with_measures_from_multiple_sources_no_dimensions( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings_per_listing"),),
- )
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
-@pytest.mark.sql_engine_snapshot
-def test_common_semantic_model( # noqa: D
- request: FixtureRequest,
- mf_test_session_state: MetricFlowTestSessionState,
- dataflow_plan_builder: DataflowPlanBuilder,
- dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
- sql_client: SqlClient,
-) -> None:
- dataflow_plan = dataflow_plan_builder.build_plan(
- MetricFlowQuerySpec(
- metric_specs=(MetricSpec(element_name="bookings"), MetricSpec(element_name="booking_value")),
- dimension_specs=(DataSet.metric_time_dimension_spec(TimeGranularity.DAY),),
- ),
- )
-
- convert_and_check(
- request=request,
- mf_test_session_state=mf_test_session_state,
- dataflow_to_sql_converter=dataflow_to_sql_converter,
- sql_client=sql_client,
- node=dataflow_plan.sink_output_nodes[0].parent_node,
- )
-
-
@pytest.mark.sql_engine_snapshot
def test_derived_metric_with_offset_window( # noqa: D
request: FixtureRequest,
diff --git a/metricflow/test/query_rendering/__init__.py b/metricflow/test/query_rendering/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/metricflow/test/query_rendering/compare_rendered_query.py b/metricflow/test/query_rendering/compare_rendered_query.py
new file mode 100644
index 0000000000..c1fffdda7c
--- /dev/null
+++ b/metricflow/test/query_rendering/compare_rendered_query.py
@@ -0,0 +1,66 @@
+"""Centralizes useful functions for comparing two different rendered queries."""
+from __future__ import annotations
+
+from _pytest.fixtures import FixtureRequest
+
+from metricflow.dataflow.dataflow_plan import BaseOutput
+from metricflow.plan_conversion.dataflow_to_sql import DataflowToSqlQueryPlanConverter
+from metricflow.protocols.sql_client import SqlClient
+from metricflow.sql.optimizer.optimization_levels import SqlQueryOptimizationLevel
+from metricflow.test.dataflow_plan_to_svg import display_graph_if_requested
+from metricflow.test.fixtures.setup_fixtures import MetricFlowTestSessionState
+from metricflow.test.sql.compare_sql_plan import assert_rendered_sql_from_plan_equal
+
+
+def convert_and_check(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+ node: BaseOutput,
+) -> None:
+ """Renders an engine-specific query output from a BaseOutput DataFlowPlan node.
+
+ TODO: refine interface once file move operations are complete.
+ """
+ # Run dataflow -> sql conversion without optimizers
+ sql_query_plan = dataflow_to_sql_converter.convert_to_sql_query_plan(
+ sql_engine_type=sql_client.sql_engine_type,
+ sql_query_plan_id="plan0",
+ dataflow_plan_node=node,
+ optimization_level=SqlQueryOptimizationLevel.O0,
+ )
+
+ display_graph_if_requested(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dag_graph=sql_query_plan,
+ )
+
+ assert_rendered_sql_from_plan_equal(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ sql_query_plan=sql_query_plan,
+ sql_client=sql_client,
+ )
+
+ # Run dataflow -> sql conversion with optimizers
+ sql_query_plan = dataflow_to_sql_converter.convert_to_sql_query_plan(
+ sql_engine_type=sql_client.sql_engine_type,
+ sql_query_plan_id="plan0_optimized",
+ dataflow_plan_node=node,
+ optimization_level=SqlQueryOptimizationLevel.O4,
+ )
+
+ display_graph_if_requested(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dag_graph=sql_query_plan,
+ )
+
+ assert_rendered_sql_from_plan_equal(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ sql_query_plan=sql_query_plan,
+ sql_client=sql_client,
+ )
diff --git a/metricflow/test/query_rendering/test_query_rendering.py b/metricflow/test/query_rendering/test_query_rendering.py
new file mode 100644
index 0000000000..e9684993b0
--- /dev/null
+++ b/metricflow/test/query_rendering/test_query_rendering.py
@@ -0,0 +1,502 @@
+"""Tests base query rendering behavior by comparing rendered output against snapshot files.
+
+This module is meant to start with a MetricFlowQuerySpec or equivalent representation of
+a MetricFlow query input and end up with a query rendered for execution against a the
+target engine. This will depend on test semantic manifests and engine-specific rendering
+logic as propagated via the SqlClient input.
+"""
+from __future__ import annotations
+
+import pytest
+from _pytest.fixtures import FixtureRequest
+from dbt_semantic_interfaces.implementations.filters.where_filter import PydanticWhereFilter
+from dbt_semantic_interfaces.references import EntityReference
+from dbt_semantic_interfaces.test_utils import as_datetime
+from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity
+
+from metricflow.dataflow.builder.dataflow_plan_builder import DataflowPlanBuilder
+from metricflow.dataset.dataset import DataSet
+from metricflow.filters.time_constraint import TimeRangeConstraint
+from metricflow.model.semantic_manifest_lookup import SemanticManifestLookup
+from metricflow.plan_conversion.column_resolver import DunderColumnAssociationResolver
+from metricflow.plan_conversion.dataflow_to_sql import DataflowToSqlQueryPlanConverter
+from metricflow.protocols.sql_client import SqlClient
+from metricflow.specs.column_assoc import ColumnAssociationResolver
+from metricflow.specs.specs import (
+ DimensionSpec,
+ MetricFlowQuerySpec,
+ MetricSpec,
+ OrderBySpec,
+ TimeDimensionSpec,
+)
+from metricflow.specs.where_filter_transform import WhereSpecFactory
+from metricflow.test.fixtures.model_fixtures import ConsistentIdObjectRepository
+from metricflow.test.fixtures.setup_fixtures import MetricFlowTestSessionState
+from metricflow.test.query_rendering.compare_rendered_query import convert_and_check
+from metricflow.test.time.metric_time_dimension import MTD_SPEC_DAY
+
+
+@pytest.fixture(scope="session")
+def multihop_dataflow_to_sql_converter( # noqa: D
+ multi_hop_join_semantic_manifest_lookup: SemanticManifestLookup,
+) -> DataflowToSqlQueryPlanConverter:
+ return DataflowToSqlQueryPlanConverter(
+ column_association_resolver=DunderColumnAssociationResolver(multi_hop_join_semantic_manifest_lookup),
+ semantic_manifest_lookup=multi_hop_join_semantic_manifest_lookup,
+ )
+
+
+@pytest.fixture(scope="session")
+def scd_dataflow_to_sql_converter( # noqa: D
+ scd_semantic_manifest_lookup: SemanticManifestLookup,
+) -> DataflowToSqlQueryPlanConverter:
+ return DataflowToSqlQueryPlanConverter(
+ column_association_resolver=DunderColumnAssociationResolver(scd_semantic_manifest_lookup),
+ semantic_manifest_lookup=scd_semantic_manifest_lookup,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_multihop_node(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ multihop_dataflow_plan_builder: DataflowPlanBuilder,
+ multihop_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests converting a dataflow plan to a SQL query plan where there is a join between 1 measure and 2 dimensions."""
+ dataflow_plan = multihop_dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="txn_count"),),
+ dimension_specs=(
+ DimensionSpec(
+ element_name="customer_name",
+ entity_links=(
+ EntityReference(element_name="account_id"),
+ EntityReference(element_name="customer_id"),
+ ),
+ ),
+ ),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=multihop_dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_filter_with_where_constraint_on_join_dim(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ column_association_resolver: ColumnAssociationResolver,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ consistent_id_object_repository: ConsistentIdObjectRepository,
+ sql_client: SqlClient,
+) -> None:
+ """Tests converting a dataflow plan to a SQL query plan where there is a join between 1 measure and 2 dimensions."""
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings"),),
+ dimension_specs=(
+ DimensionSpec(
+ element_name="is_instant",
+ entity_links=(),
+ ),
+ ),
+ where_constraint=(
+ WhereSpecFactory(
+ column_association_resolver=column_association_resolver,
+ ).create_from_where_filter(
+ PydanticWhereFilter(
+ where_sql_template="{{ Dimension('listing__country_latest') }} = 'us'",
+ )
+ )
+ ),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_partitioned_join(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ consistent_id_object_repository: ConsistentIdObjectRepository,
+ sql_client: SqlClient,
+) -> None:
+ """Tests converting a dataflow plan where there's a join on a partitioned dimension."""
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="identity_verifications"),),
+ dimension_specs=(
+ DimensionSpec(
+ element_name="home_state",
+ entity_links=(EntityReference(element_name="user"),),
+ ),
+ ),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_limit_rows( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests a plan with a limit to the number of rows returned."""
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings"),),
+ time_dimension_specs=(
+ TimeDimensionSpec(
+ element_name="ds",
+ entity_links=(),
+ ),
+ ),
+ limit=1,
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_distinct_values( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ column_association_resolver: ColumnAssociationResolver,
+ sql_client: SqlClient,
+) -> None:
+ """Tests a plan to get distinct values for a dimension."""
+ dataflow_plan = dataflow_plan_builder.build_plan_for_distinct_values(
+ query_spec=MetricFlowQuerySpec(
+ dimension_specs=(
+ DimensionSpec(element_name="country_latest", entity_links=(EntityReference(element_name="listing"),)),
+ ),
+ where_constraint=(
+ WhereSpecFactory(
+ column_association_resolver=column_association_resolver,
+ ).create_from_where_filter(
+ PydanticWhereFilter(
+ where_sql_template="{{ Dimension('listing__country_latest') }} = 'us'",
+ )
+ )
+ ),
+ order_by_specs=(
+ OrderBySpec(
+ instance_spec=DimensionSpec(
+ element_name="country_latest", entity_links=(EntityReference(element_name="listing"),)
+ ),
+ descending=True,
+ ),
+ ),
+ limit=100,
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_local_dimension_using_local_entity( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="listings"),),
+ dimension_specs=(
+ DimensionSpec(
+ element_name="country_latest",
+ entity_links=(EntityReference(element_name="listing"),),
+ ),
+ ),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_measure_constraint( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="lux_booking_value_rate_expr"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_measure_constraint_with_reused_measure( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="instant_booking_value_ratio"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_measure_constraint_with_single_expr_and_alias( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="double_counted_delayed_bookings"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_join_to_scd_dimension(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ scd_column_association_resolver: ColumnAssociationResolver,
+ scd_dataflow_plan_builder: DataflowPlanBuilder,
+ scd_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests conversion of a plan using a dimension with a validity window inside a measure constraint."""
+ dataflow_plan = scd_dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(
+ MetricSpec(
+ element_name="family_bookings",
+ constraint=(
+ WhereSpecFactory(
+ column_association_resolver=scd_column_association_resolver,
+ ).create_from_where_filter(
+ PydanticWhereFilter(
+ where_sql_template="{{ Dimension('listing__capacity') }} > 2",
+ )
+ )
+ ),
+ ),
+ ),
+ time_dimension_specs=(MTD_SPEC_DAY,),
+ ),
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=scd_dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_multi_hop_through_scd_dimension(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ scd_dataflow_plan_builder: DataflowPlanBuilder,
+ scd_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests conversion of a plan using a dimension that is reached through an SCD table."""
+ dataflow_plan = scd_dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
+ dimension_specs=(DimensionSpec.from_name(name="listing__user__home_state_latest"),),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=scd_dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_multi_hop_to_scd_dimension(
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ scd_dataflow_plan_builder: DataflowPlanBuilder,
+ scd_dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ """Tests conversion of a plan using an SCD dimension that is reached through another table."""
+ dataflow_plan = scd_dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings"),),
+ time_dimension_specs=(MTD_SPEC_DAY,),
+ dimension_specs=(DimensionSpec.from_name(name="listing__lux_listing__is_confirmed_lux"),),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=scd_dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_multiple_metrics_no_dimensions( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings"), MetricSpec(element_name="listings")),
+ time_range_constraint=TimeRangeConstraint(
+ start_time=as_datetime("2020-01-01"), end_time=as_datetime("2020-01-01")
+ ),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_metric_with_measures_from_multiple_sources_no_dimensions( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings_per_listing"),),
+ )
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
+
+
+@pytest.mark.sql_engine_snapshot
+def test_common_semantic_model( # noqa: D
+ request: FixtureRequest,
+ mf_test_session_state: MetricFlowTestSessionState,
+ dataflow_plan_builder: DataflowPlanBuilder,
+ dataflow_to_sql_converter: DataflowToSqlQueryPlanConverter,
+ sql_client: SqlClient,
+) -> None:
+ dataflow_plan = dataflow_plan_builder.build_plan(
+ MetricFlowQuerySpec(
+ metric_specs=(MetricSpec(element_name="bookings"), MetricSpec(element_name="booking_value")),
+ dimension_specs=(DataSet.metric_time_dimension_spec(TimeGranularity.DAY),),
+ ),
+ )
+
+ convert_and_check(
+ request=request,
+ mf_test_session_state=mf_test_session_state,
+ dataflow_to_sql_converter=dataflow_to_sql_converter,
+ sql_client=sql_client,
+ node=dataflow_plan.sink_output_nodes[0].parent_node,
+ )
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_derived_metric_with_one_input_metric__plan0.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_derived_metric_with_one_input_metric__plan0.sql
deleted file mode 100644
index b9aaf295ed..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_derived_metric_with_one_input_metric__plan0.sql
+++ /dev/null
@@ -1,156 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- subq_7.metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_5.metric_time__day AS metric_time__day
- , subq_4.bookings_5_days_ago AS bookings_5_days_ago
- FROM (
- -- Date Spine
- SELECT
- subq_6.ds AS metric_time__day
- FROM ***************************.mf_time_spine subq_6
- ) subq_5
- INNER JOIN (
- -- Compute Metrics via Expressions
- SELECT
- subq_3.metric_time__day
- , subq_3.bookings AS bookings_5_days_ago
- FROM (
- -- Aggregate Measures
- SELECT
- subq_2.metric_time__day
- , SUM(subq_2.bookings) AS bookings
- FROM (
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- subq_1.metric_time__day
- , subq_1.bookings
- FROM (
- -- Metric Time Dimension 'ds'
- SELECT
- subq_0.ds__day
- , subq_0.ds__week
- , subq_0.ds__month
- , subq_0.ds__quarter
- , subq_0.ds__year
- , subq_0.ds_partitioned__day
- , subq_0.ds_partitioned__week
- , subq_0.ds_partitioned__month
- , subq_0.ds_partitioned__quarter
- , subq_0.ds_partitioned__year
- , subq_0.paid_at__day
- , subq_0.paid_at__week
- , subq_0.paid_at__month
- , subq_0.paid_at__quarter
- , subq_0.paid_at__year
- , subq_0.booking__ds__day
- , subq_0.booking__ds__week
- , subq_0.booking__ds__month
- , subq_0.booking__ds__quarter
- , subq_0.booking__ds__year
- , subq_0.booking__ds_partitioned__day
- , subq_0.booking__ds_partitioned__week
- , subq_0.booking__ds_partitioned__month
- , subq_0.booking__ds_partitioned__quarter
- , subq_0.booking__ds_partitioned__year
- , subq_0.booking__paid_at__day
- , subq_0.booking__paid_at__week
- , subq_0.booking__paid_at__month
- , subq_0.booking__paid_at__quarter
- , subq_0.booking__paid_at__year
- , subq_0.ds__day AS metric_time__day
- , subq_0.ds__week AS metric_time__week
- , subq_0.ds__month AS metric_time__month
- , subq_0.ds__quarter AS metric_time__quarter
- , subq_0.ds__year AS metric_time__year
- , subq_0.listing
- , subq_0.guest
- , subq_0.host
- , subq_0.booking__listing
- , subq_0.booking__guest
- , subq_0.booking__host
- , subq_0.is_instant
- , subq_0.booking__is_instant
- , subq_0.bookings
- , subq_0.instant_bookings
- , subq_0.booking_value
- , subq_0.max_booking_value
- , subq_0.min_booking_value
- , subq_0.bookers
- , subq_0.average_booking_value
- , subq_0.referred_bookings
- , subq_0.median_booking_value
- , subq_0.booking_value_p99
- , subq_0.discrete_booking_value_p99
- , subq_0.approximate_continuous_booking_value_p99
- , subq_0.approximate_discrete_booking_value_p99
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- SELECT
- 1 AS bookings
- , CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
- , bookings_source_src_10001.booking_value
- , bookings_source_src_10001.booking_value AS max_booking_value
- , bookings_source_src_10001.booking_value AS min_booking_value
- , bookings_source_src_10001.guest_id AS bookers
- , bookings_source_src_10001.booking_value AS average_booking_value
- , bookings_source_src_10001.booking_value AS booking_payments
- , CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
- , bookings_source_src_10001.booking_value AS median_booking_value
- , bookings_source_src_10001.booking_value AS booking_value_p99
- , bookings_source_src_10001.booking_value AS discrete_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_continuous_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_discrete_booking_value_p99
- , bookings_source_src_10001.is_instant
- , bookings_source_src_10001.ds AS ds__day
- , DATE_TRUNC(bookings_source_src_10001.ds, isoweek) AS ds__week
- , DATE_TRUNC(bookings_source_src_10001.ds, month) AS ds__month
- , DATE_TRUNC(bookings_source_src_10001.ds, quarter) AS ds__quarter
- , DATE_TRUNC(bookings_source_src_10001.ds, year) AS ds__year
- , bookings_source_src_10001.ds_partitioned AS ds_partitioned__day
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, isoweek) AS ds_partitioned__week
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, month) AS ds_partitioned__month
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, quarter) AS ds_partitioned__quarter
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, year) AS ds_partitioned__year
- , bookings_source_src_10001.paid_at AS paid_at__day
- , DATE_TRUNC(bookings_source_src_10001.paid_at, isoweek) AS paid_at__week
- , DATE_TRUNC(bookings_source_src_10001.paid_at, month) AS paid_at__month
- , DATE_TRUNC(bookings_source_src_10001.paid_at, quarter) AS paid_at__quarter
- , DATE_TRUNC(bookings_source_src_10001.paid_at, year) AS paid_at__year
- , bookings_source_src_10001.is_instant AS booking__is_instant
- , bookings_source_src_10001.ds AS booking__ds__day
- , DATE_TRUNC(bookings_source_src_10001.ds, isoweek) AS booking__ds__week
- , DATE_TRUNC(bookings_source_src_10001.ds, month) AS booking__ds__month
- , DATE_TRUNC(bookings_source_src_10001.ds, quarter) AS booking__ds__quarter
- , DATE_TRUNC(bookings_source_src_10001.ds, year) AS booking__ds__year
- , bookings_source_src_10001.ds_partitioned AS booking__ds_partitioned__day
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, isoweek) AS booking__ds_partitioned__week
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, month) AS booking__ds_partitioned__month
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, quarter) AS booking__ds_partitioned__quarter
- , DATE_TRUNC(bookings_source_src_10001.ds_partitioned, year) AS booking__ds_partitioned__year
- , bookings_source_src_10001.paid_at AS booking__paid_at__day
- , DATE_TRUNC(bookings_source_src_10001.paid_at, isoweek) AS booking__paid_at__week
- , DATE_TRUNC(bookings_source_src_10001.paid_at, month) AS booking__paid_at__month
- , DATE_TRUNC(bookings_source_src_10001.paid_at, quarter) AS booking__paid_at__quarter
- , DATE_TRUNC(bookings_source_src_10001.paid_at, year) AS booking__paid_at__year
- , bookings_source_src_10001.listing_id AS listing
- , bookings_source_src_10001.guest_id AS guest
- , bookings_source_src_10001.host_id AS host
- , bookings_source_src_10001.listing_id AS booking__listing
- , bookings_source_src_10001.guest_id AS booking__guest
- , bookings_source_src_10001.host_id AS booking__host
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_0
- ) subq_1
- ) subq_2
- GROUP BY
- metric_time__day
- ) subq_3
- ) subq_4
- ON
- DATE_SUB(CAST(subq_5.metric_time__day AS DATETIME), INTERVAL 5 day) = subq_4.metric_time__day
-) subq_7
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_derived_metric_with_one_input_metric__plan0_optimized.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_derived_metric_with_one_input_metric__plan0_optimized.sql
deleted file mode 100644
index b5038ca7e0..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_derived_metric_with_one_input_metric__plan0_optimized.sql
+++ /dev/null
@@ -1,32 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_14.ds AS metric_time__day
- , subq_12.bookings_5_days_ago AS bookings_5_days_ago
- FROM ***************************.mf_time_spine subq_14
- INNER JOIN (
- -- Aggregate Measures
- -- Compute Metrics via Expressions
- SELECT
- metric_time__day
- , SUM(bookings) AS bookings_5_days_ago
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- -- Metric Time Dimension 'ds'
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- ds AS metric_time__day
- , 1 AS bookings
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_10
- GROUP BY
- metric_time__day
- ) subq_12
- ON
- DATE_SUB(CAST(subq_14.ds AS DATETIME), INTERVAL 5 day) = subq_12.metric_time__day
-) subq_15
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_derived_metric_with_one_input_metric__plan0.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_derived_metric_with_one_input_metric__plan0.sql
deleted file mode 100644
index fe393b0ff0..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_derived_metric_with_one_input_metric__plan0.sql
+++ /dev/null
@@ -1,156 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- subq_7.metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_5.metric_time__day AS metric_time__day
- , subq_4.bookings_5_days_ago AS bookings_5_days_ago
- FROM (
- -- Date Spine
- SELECT
- subq_6.ds AS metric_time__day
- FROM ***************************.mf_time_spine subq_6
- ) subq_5
- INNER JOIN (
- -- Compute Metrics via Expressions
- SELECT
- subq_3.metric_time__day
- , subq_3.bookings AS bookings_5_days_ago
- FROM (
- -- Aggregate Measures
- SELECT
- subq_2.metric_time__day
- , SUM(subq_2.bookings) AS bookings
- FROM (
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- subq_1.metric_time__day
- , subq_1.bookings
- FROM (
- -- Metric Time Dimension 'ds'
- SELECT
- subq_0.ds__day
- , subq_0.ds__week
- , subq_0.ds__month
- , subq_0.ds__quarter
- , subq_0.ds__year
- , subq_0.ds_partitioned__day
- , subq_0.ds_partitioned__week
- , subq_0.ds_partitioned__month
- , subq_0.ds_partitioned__quarter
- , subq_0.ds_partitioned__year
- , subq_0.paid_at__day
- , subq_0.paid_at__week
- , subq_0.paid_at__month
- , subq_0.paid_at__quarter
- , subq_0.paid_at__year
- , subq_0.booking__ds__day
- , subq_0.booking__ds__week
- , subq_0.booking__ds__month
- , subq_0.booking__ds__quarter
- , subq_0.booking__ds__year
- , subq_0.booking__ds_partitioned__day
- , subq_0.booking__ds_partitioned__week
- , subq_0.booking__ds_partitioned__month
- , subq_0.booking__ds_partitioned__quarter
- , subq_0.booking__ds_partitioned__year
- , subq_0.booking__paid_at__day
- , subq_0.booking__paid_at__week
- , subq_0.booking__paid_at__month
- , subq_0.booking__paid_at__quarter
- , subq_0.booking__paid_at__year
- , subq_0.ds__day AS metric_time__day
- , subq_0.ds__week AS metric_time__week
- , subq_0.ds__month AS metric_time__month
- , subq_0.ds__quarter AS metric_time__quarter
- , subq_0.ds__year AS metric_time__year
- , subq_0.listing
- , subq_0.guest
- , subq_0.host
- , subq_0.booking__listing
- , subq_0.booking__guest
- , subq_0.booking__host
- , subq_0.is_instant
- , subq_0.booking__is_instant
- , subq_0.bookings
- , subq_0.instant_bookings
- , subq_0.booking_value
- , subq_0.max_booking_value
- , subq_0.min_booking_value
- , subq_0.bookers
- , subq_0.average_booking_value
- , subq_0.referred_bookings
- , subq_0.median_booking_value
- , subq_0.booking_value_p99
- , subq_0.discrete_booking_value_p99
- , subq_0.approximate_continuous_booking_value_p99
- , subq_0.approximate_discrete_booking_value_p99
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- SELECT
- 1 AS bookings
- , CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
- , bookings_source_src_10001.booking_value
- , bookings_source_src_10001.booking_value AS max_booking_value
- , bookings_source_src_10001.booking_value AS min_booking_value
- , bookings_source_src_10001.guest_id AS bookers
- , bookings_source_src_10001.booking_value AS average_booking_value
- , bookings_source_src_10001.booking_value AS booking_payments
- , CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
- , bookings_source_src_10001.booking_value AS median_booking_value
- , bookings_source_src_10001.booking_value AS booking_value_p99
- , bookings_source_src_10001.booking_value AS discrete_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_continuous_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_discrete_booking_value_p99
- , bookings_source_src_10001.is_instant
- , bookings_source_src_10001.ds AS ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS ds__year
- , bookings_source_src_10001.ds_partitioned AS ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__year
- , bookings_source_src_10001.paid_at AS paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS paid_at__year
- , bookings_source_src_10001.is_instant AS booking__is_instant
- , bookings_source_src_10001.ds AS booking__ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS booking__ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS booking__ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS booking__ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS booking__ds__year
- , bookings_source_src_10001.ds_partitioned AS booking__ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__year
- , bookings_source_src_10001.paid_at AS booking__paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS booking__paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS booking__paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS booking__paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS booking__paid_at__year
- , bookings_source_src_10001.listing_id AS listing
- , bookings_source_src_10001.guest_id AS guest
- , bookings_source_src_10001.host_id AS host
- , bookings_source_src_10001.listing_id AS booking__listing
- , bookings_source_src_10001.guest_id AS booking__guest
- , bookings_source_src_10001.host_id AS booking__host
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_0
- ) subq_1
- ) subq_2
- GROUP BY
- subq_2.metric_time__day
- ) subq_3
- ) subq_4
- ON
- DATEADD(day, -5, subq_5.metric_time__day) = subq_4.metric_time__day
-) subq_7
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_derived_metric_with_one_input_metric__plan0_optimized.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_derived_metric_with_one_input_metric__plan0_optimized.sql
deleted file mode 100644
index 2416e80d8c..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_derived_metric_with_one_input_metric__plan0_optimized.sql
+++ /dev/null
@@ -1,32 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_14.ds AS metric_time__day
- , subq_12.bookings_5_days_ago AS bookings_5_days_ago
- FROM ***************************.mf_time_spine subq_14
- INNER JOIN (
- -- Aggregate Measures
- -- Compute Metrics via Expressions
- SELECT
- metric_time__day
- , SUM(bookings) AS bookings_5_days_ago
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- -- Metric Time Dimension 'ds'
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- ds AS metric_time__day
- , 1 AS bookings
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_10
- GROUP BY
- metric_time__day
- ) subq_12
- ON
- DATEADD(day, -5, subq_14.ds) = subq_12.metric_time__day
-) subq_15
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_derived_metric_with_one_input_metric__plan0.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_derived_metric_with_one_input_metric__plan0.sql
deleted file mode 100644
index dd6bf14182..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_derived_metric_with_one_input_metric__plan0.sql
+++ /dev/null
@@ -1,156 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- subq_7.metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_5.metric_time__day AS metric_time__day
- , subq_4.bookings_5_days_ago AS bookings_5_days_ago
- FROM (
- -- Date Spine
- SELECT
- subq_6.ds AS metric_time__day
- FROM ***************************.mf_time_spine subq_6
- ) subq_5
- INNER JOIN (
- -- Compute Metrics via Expressions
- SELECT
- subq_3.metric_time__day
- , subq_3.bookings AS bookings_5_days_ago
- FROM (
- -- Aggregate Measures
- SELECT
- subq_2.metric_time__day
- , SUM(subq_2.bookings) AS bookings
- FROM (
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- subq_1.metric_time__day
- , subq_1.bookings
- FROM (
- -- Metric Time Dimension 'ds'
- SELECT
- subq_0.ds__day
- , subq_0.ds__week
- , subq_0.ds__month
- , subq_0.ds__quarter
- , subq_0.ds__year
- , subq_0.ds_partitioned__day
- , subq_0.ds_partitioned__week
- , subq_0.ds_partitioned__month
- , subq_0.ds_partitioned__quarter
- , subq_0.ds_partitioned__year
- , subq_0.paid_at__day
- , subq_0.paid_at__week
- , subq_0.paid_at__month
- , subq_0.paid_at__quarter
- , subq_0.paid_at__year
- , subq_0.booking__ds__day
- , subq_0.booking__ds__week
- , subq_0.booking__ds__month
- , subq_0.booking__ds__quarter
- , subq_0.booking__ds__year
- , subq_0.booking__ds_partitioned__day
- , subq_0.booking__ds_partitioned__week
- , subq_0.booking__ds_partitioned__month
- , subq_0.booking__ds_partitioned__quarter
- , subq_0.booking__ds_partitioned__year
- , subq_0.booking__paid_at__day
- , subq_0.booking__paid_at__week
- , subq_0.booking__paid_at__month
- , subq_0.booking__paid_at__quarter
- , subq_0.booking__paid_at__year
- , subq_0.ds__day AS metric_time__day
- , subq_0.ds__week AS metric_time__week
- , subq_0.ds__month AS metric_time__month
- , subq_0.ds__quarter AS metric_time__quarter
- , subq_0.ds__year AS metric_time__year
- , subq_0.listing
- , subq_0.guest
- , subq_0.host
- , subq_0.booking__listing
- , subq_0.booking__guest
- , subq_0.booking__host
- , subq_0.is_instant
- , subq_0.booking__is_instant
- , subq_0.bookings
- , subq_0.instant_bookings
- , subq_0.booking_value
- , subq_0.max_booking_value
- , subq_0.min_booking_value
- , subq_0.bookers
- , subq_0.average_booking_value
- , subq_0.referred_bookings
- , subq_0.median_booking_value
- , subq_0.booking_value_p99
- , subq_0.discrete_booking_value_p99
- , subq_0.approximate_continuous_booking_value_p99
- , subq_0.approximate_discrete_booking_value_p99
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- SELECT
- 1 AS bookings
- , CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
- , bookings_source_src_10001.booking_value
- , bookings_source_src_10001.booking_value AS max_booking_value
- , bookings_source_src_10001.booking_value AS min_booking_value
- , bookings_source_src_10001.guest_id AS bookers
- , bookings_source_src_10001.booking_value AS average_booking_value
- , bookings_source_src_10001.booking_value AS booking_payments
- , CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
- , bookings_source_src_10001.booking_value AS median_booking_value
- , bookings_source_src_10001.booking_value AS booking_value_p99
- , bookings_source_src_10001.booking_value AS discrete_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_continuous_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_discrete_booking_value_p99
- , bookings_source_src_10001.is_instant
- , bookings_source_src_10001.ds AS ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS ds__year
- , bookings_source_src_10001.ds_partitioned AS ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__year
- , bookings_source_src_10001.paid_at AS paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS paid_at__year
- , bookings_source_src_10001.is_instant AS booking__is_instant
- , bookings_source_src_10001.ds AS booking__ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS booking__ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS booking__ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS booking__ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS booking__ds__year
- , bookings_source_src_10001.ds_partitioned AS booking__ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__year
- , bookings_source_src_10001.paid_at AS booking__paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS booking__paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS booking__paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS booking__paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS booking__paid_at__year
- , bookings_source_src_10001.listing_id AS listing
- , bookings_source_src_10001.guest_id AS guest
- , bookings_source_src_10001.host_id AS host
- , bookings_source_src_10001.listing_id AS booking__listing
- , bookings_source_src_10001.guest_id AS booking__guest
- , bookings_source_src_10001.host_id AS booking__host
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_0
- ) subq_1
- ) subq_2
- GROUP BY
- subq_2.metric_time__day
- ) subq_3
- ) subq_4
- ON
- subq_5.metric_time__day - INTERVAL 5 day = subq_4.metric_time__day
-) subq_7
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_derived_metric_with_one_input_metric__plan0_optimized.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_derived_metric_with_one_input_metric__plan0_optimized.sql
deleted file mode 100644
index 9fbe149367..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_derived_metric_with_one_input_metric__plan0_optimized.sql
+++ /dev/null
@@ -1,32 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_14.ds AS metric_time__day
- , subq_12.bookings_5_days_ago AS bookings_5_days_ago
- FROM ***************************.mf_time_spine subq_14
- INNER JOIN (
- -- Aggregate Measures
- -- Compute Metrics via Expressions
- SELECT
- metric_time__day
- , SUM(bookings) AS bookings_5_days_ago
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- -- Metric Time Dimension 'ds'
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- ds AS metric_time__day
- , 1 AS bookings
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_10
- GROUP BY
- metric_time__day
- ) subq_12
- ON
- subq_14.ds - INTERVAL 5 day = subq_12.metric_time__day
-) subq_15
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_derived_metric_with_one_input_metric__plan0.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_derived_metric_with_one_input_metric__plan0.sql
deleted file mode 100644
index fd5eb6d10a..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_derived_metric_with_one_input_metric__plan0.sql
+++ /dev/null
@@ -1,156 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- subq_7.metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_5.metric_time__day AS metric_time__day
- , subq_4.bookings_5_days_ago AS bookings_5_days_ago
- FROM (
- -- Date Spine
- SELECT
- subq_6.ds AS metric_time__day
- FROM ***************************.mf_time_spine subq_6
- ) subq_5
- INNER JOIN (
- -- Compute Metrics via Expressions
- SELECT
- subq_3.metric_time__day
- , subq_3.bookings AS bookings_5_days_ago
- FROM (
- -- Aggregate Measures
- SELECT
- subq_2.metric_time__day
- , SUM(subq_2.bookings) AS bookings
- FROM (
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- subq_1.metric_time__day
- , subq_1.bookings
- FROM (
- -- Metric Time Dimension 'ds'
- SELECT
- subq_0.ds__day
- , subq_0.ds__week
- , subq_0.ds__month
- , subq_0.ds__quarter
- , subq_0.ds__year
- , subq_0.ds_partitioned__day
- , subq_0.ds_partitioned__week
- , subq_0.ds_partitioned__month
- , subq_0.ds_partitioned__quarter
- , subq_0.ds_partitioned__year
- , subq_0.paid_at__day
- , subq_0.paid_at__week
- , subq_0.paid_at__month
- , subq_0.paid_at__quarter
- , subq_0.paid_at__year
- , subq_0.booking__ds__day
- , subq_0.booking__ds__week
- , subq_0.booking__ds__month
- , subq_0.booking__ds__quarter
- , subq_0.booking__ds__year
- , subq_0.booking__ds_partitioned__day
- , subq_0.booking__ds_partitioned__week
- , subq_0.booking__ds_partitioned__month
- , subq_0.booking__ds_partitioned__quarter
- , subq_0.booking__ds_partitioned__year
- , subq_0.booking__paid_at__day
- , subq_0.booking__paid_at__week
- , subq_0.booking__paid_at__month
- , subq_0.booking__paid_at__quarter
- , subq_0.booking__paid_at__year
- , subq_0.ds__day AS metric_time__day
- , subq_0.ds__week AS metric_time__week
- , subq_0.ds__month AS metric_time__month
- , subq_0.ds__quarter AS metric_time__quarter
- , subq_0.ds__year AS metric_time__year
- , subq_0.listing
- , subq_0.guest
- , subq_0.host
- , subq_0.booking__listing
- , subq_0.booking__guest
- , subq_0.booking__host
- , subq_0.is_instant
- , subq_0.booking__is_instant
- , subq_0.bookings
- , subq_0.instant_bookings
- , subq_0.booking_value
- , subq_0.max_booking_value
- , subq_0.min_booking_value
- , subq_0.bookers
- , subq_0.average_booking_value
- , subq_0.referred_bookings
- , subq_0.median_booking_value
- , subq_0.booking_value_p99
- , subq_0.discrete_booking_value_p99
- , subq_0.approximate_continuous_booking_value_p99
- , subq_0.approximate_discrete_booking_value_p99
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- SELECT
- 1 AS bookings
- , CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
- , bookings_source_src_10001.booking_value
- , bookings_source_src_10001.booking_value AS max_booking_value
- , bookings_source_src_10001.booking_value AS min_booking_value
- , bookings_source_src_10001.guest_id AS bookers
- , bookings_source_src_10001.booking_value AS average_booking_value
- , bookings_source_src_10001.booking_value AS booking_payments
- , CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
- , bookings_source_src_10001.booking_value AS median_booking_value
- , bookings_source_src_10001.booking_value AS booking_value_p99
- , bookings_source_src_10001.booking_value AS discrete_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_continuous_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_discrete_booking_value_p99
- , bookings_source_src_10001.is_instant
- , bookings_source_src_10001.ds AS ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS ds__year
- , bookings_source_src_10001.ds_partitioned AS ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__year
- , bookings_source_src_10001.paid_at AS paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS paid_at__year
- , bookings_source_src_10001.is_instant AS booking__is_instant
- , bookings_source_src_10001.ds AS booking__ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS booking__ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS booking__ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS booking__ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS booking__ds__year
- , bookings_source_src_10001.ds_partitioned AS booking__ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__year
- , bookings_source_src_10001.paid_at AS booking__paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS booking__paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS booking__paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS booking__paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS booking__paid_at__year
- , bookings_source_src_10001.listing_id AS listing
- , bookings_source_src_10001.guest_id AS guest
- , bookings_source_src_10001.host_id AS host
- , bookings_source_src_10001.listing_id AS booking__listing
- , bookings_source_src_10001.guest_id AS booking__guest
- , bookings_source_src_10001.host_id AS booking__host
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_0
- ) subq_1
- ) subq_2
- GROUP BY
- subq_2.metric_time__day
- ) subq_3
- ) subq_4
- ON
- subq_5.metric_time__day - MAKE_INTERVAL(days => 5) = subq_4.metric_time__day
-) subq_7
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_derived_metric_with_one_input_metric__plan0_optimized.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_derived_metric_with_one_input_metric__plan0_optimized.sql
deleted file mode 100644
index 38866f9ba0..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_derived_metric_with_one_input_metric__plan0_optimized.sql
+++ /dev/null
@@ -1,32 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_14.ds AS metric_time__day
- , subq_12.bookings_5_days_ago AS bookings_5_days_ago
- FROM ***************************.mf_time_spine subq_14
- INNER JOIN (
- -- Aggregate Measures
- -- Compute Metrics via Expressions
- SELECT
- metric_time__day
- , SUM(bookings) AS bookings_5_days_ago
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- -- Metric Time Dimension 'ds'
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- ds AS metric_time__day
- , 1 AS bookings
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_10
- GROUP BY
- metric_time__day
- ) subq_12
- ON
- subq_14.ds - MAKE_INTERVAL(days => 5) = subq_12.metric_time__day
-) subq_15
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_derived_metric_with_one_input_metric__plan0.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_derived_metric_with_one_input_metric__plan0.sql
deleted file mode 100644
index fe393b0ff0..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_derived_metric_with_one_input_metric__plan0.sql
+++ /dev/null
@@ -1,156 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- subq_7.metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_5.metric_time__day AS metric_time__day
- , subq_4.bookings_5_days_ago AS bookings_5_days_ago
- FROM (
- -- Date Spine
- SELECT
- subq_6.ds AS metric_time__day
- FROM ***************************.mf_time_spine subq_6
- ) subq_5
- INNER JOIN (
- -- Compute Metrics via Expressions
- SELECT
- subq_3.metric_time__day
- , subq_3.bookings AS bookings_5_days_ago
- FROM (
- -- Aggregate Measures
- SELECT
- subq_2.metric_time__day
- , SUM(subq_2.bookings) AS bookings
- FROM (
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- subq_1.metric_time__day
- , subq_1.bookings
- FROM (
- -- Metric Time Dimension 'ds'
- SELECT
- subq_0.ds__day
- , subq_0.ds__week
- , subq_0.ds__month
- , subq_0.ds__quarter
- , subq_0.ds__year
- , subq_0.ds_partitioned__day
- , subq_0.ds_partitioned__week
- , subq_0.ds_partitioned__month
- , subq_0.ds_partitioned__quarter
- , subq_0.ds_partitioned__year
- , subq_0.paid_at__day
- , subq_0.paid_at__week
- , subq_0.paid_at__month
- , subq_0.paid_at__quarter
- , subq_0.paid_at__year
- , subq_0.booking__ds__day
- , subq_0.booking__ds__week
- , subq_0.booking__ds__month
- , subq_0.booking__ds__quarter
- , subq_0.booking__ds__year
- , subq_0.booking__ds_partitioned__day
- , subq_0.booking__ds_partitioned__week
- , subq_0.booking__ds_partitioned__month
- , subq_0.booking__ds_partitioned__quarter
- , subq_0.booking__ds_partitioned__year
- , subq_0.booking__paid_at__day
- , subq_0.booking__paid_at__week
- , subq_0.booking__paid_at__month
- , subq_0.booking__paid_at__quarter
- , subq_0.booking__paid_at__year
- , subq_0.ds__day AS metric_time__day
- , subq_0.ds__week AS metric_time__week
- , subq_0.ds__month AS metric_time__month
- , subq_0.ds__quarter AS metric_time__quarter
- , subq_0.ds__year AS metric_time__year
- , subq_0.listing
- , subq_0.guest
- , subq_0.host
- , subq_0.booking__listing
- , subq_0.booking__guest
- , subq_0.booking__host
- , subq_0.is_instant
- , subq_0.booking__is_instant
- , subq_0.bookings
- , subq_0.instant_bookings
- , subq_0.booking_value
- , subq_0.max_booking_value
- , subq_0.min_booking_value
- , subq_0.bookers
- , subq_0.average_booking_value
- , subq_0.referred_bookings
- , subq_0.median_booking_value
- , subq_0.booking_value_p99
- , subq_0.discrete_booking_value_p99
- , subq_0.approximate_continuous_booking_value_p99
- , subq_0.approximate_discrete_booking_value_p99
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- SELECT
- 1 AS bookings
- , CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
- , bookings_source_src_10001.booking_value
- , bookings_source_src_10001.booking_value AS max_booking_value
- , bookings_source_src_10001.booking_value AS min_booking_value
- , bookings_source_src_10001.guest_id AS bookers
- , bookings_source_src_10001.booking_value AS average_booking_value
- , bookings_source_src_10001.booking_value AS booking_payments
- , CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
- , bookings_source_src_10001.booking_value AS median_booking_value
- , bookings_source_src_10001.booking_value AS booking_value_p99
- , bookings_source_src_10001.booking_value AS discrete_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_continuous_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_discrete_booking_value_p99
- , bookings_source_src_10001.is_instant
- , bookings_source_src_10001.ds AS ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS ds__year
- , bookings_source_src_10001.ds_partitioned AS ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__year
- , bookings_source_src_10001.paid_at AS paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS paid_at__year
- , bookings_source_src_10001.is_instant AS booking__is_instant
- , bookings_source_src_10001.ds AS booking__ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS booking__ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS booking__ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS booking__ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS booking__ds__year
- , bookings_source_src_10001.ds_partitioned AS booking__ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__year
- , bookings_source_src_10001.paid_at AS booking__paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS booking__paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS booking__paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS booking__paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS booking__paid_at__year
- , bookings_source_src_10001.listing_id AS listing
- , bookings_source_src_10001.guest_id AS guest
- , bookings_source_src_10001.host_id AS host
- , bookings_source_src_10001.listing_id AS booking__listing
- , bookings_source_src_10001.guest_id AS booking__guest
- , bookings_source_src_10001.host_id AS booking__host
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_0
- ) subq_1
- ) subq_2
- GROUP BY
- subq_2.metric_time__day
- ) subq_3
- ) subq_4
- ON
- DATEADD(day, -5, subq_5.metric_time__day) = subq_4.metric_time__day
-) subq_7
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_derived_metric_with_one_input_metric__plan0_optimized.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_derived_metric_with_one_input_metric__plan0_optimized.sql
deleted file mode 100644
index 2416e80d8c..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_derived_metric_with_one_input_metric__plan0_optimized.sql
+++ /dev/null
@@ -1,32 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_14.ds AS metric_time__day
- , subq_12.bookings_5_days_ago AS bookings_5_days_ago
- FROM ***************************.mf_time_spine subq_14
- INNER JOIN (
- -- Aggregate Measures
- -- Compute Metrics via Expressions
- SELECT
- metric_time__day
- , SUM(bookings) AS bookings_5_days_ago
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- -- Metric Time Dimension 'ds'
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- ds AS metric_time__day
- , 1 AS bookings
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_10
- GROUP BY
- metric_time__day
- ) subq_12
- ON
- DATEADD(day, -5, subq_14.ds) = subq_12.metric_time__day
-) subq_15
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_derived_metric_with_one_input_metric__plan0.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_derived_metric_with_one_input_metric__plan0.sql
deleted file mode 100644
index fe393b0ff0..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_derived_metric_with_one_input_metric__plan0.sql
+++ /dev/null
@@ -1,156 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- subq_7.metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_5.metric_time__day AS metric_time__day
- , subq_4.bookings_5_days_ago AS bookings_5_days_ago
- FROM (
- -- Date Spine
- SELECT
- subq_6.ds AS metric_time__day
- FROM ***************************.mf_time_spine subq_6
- ) subq_5
- INNER JOIN (
- -- Compute Metrics via Expressions
- SELECT
- subq_3.metric_time__day
- , subq_3.bookings AS bookings_5_days_ago
- FROM (
- -- Aggregate Measures
- SELECT
- subq_2.metric_time__day
- , SUM(subq_2.bookings) AS bookings
- FROM (
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- subq_1.metric_time__day
- , subq_1.bookings
- FROM (
- -- Metric Time Dimension 'ds'
- SELECT
- subq_0.ds__day
- , subq_0.ds__week
- , subq_0.ds__month
- , subq_0.ds__quarter
- , subq_0.ds__year
- , subq_0.ds_partitioned__day
- , subq_0.ds_partitioned__week
- , subq_0.ds_partitioned__month
- , subq_0.ds_partitioned__quarter
- , subq_0.ds_partitioned__year
- , subq_0.paid_at__day
- , subq_0.paid_at__week
- , subq_0.paid_at__month
- , subq_0.paid_at__quarter
- , subq_0.paid_at__year
- , subq_0.booking__ds__day
- , subq_0.booking__ds__week
- , subq_0.booking__ds__month
- , subq_0.booking__ds__quarter
- , subq_0.booking__ds__year
- , subq_0.booking__ds_partitioned__day
- , subq_0.booking__ds_partitioned__week
- , subq_0.booking__ds_partitioned__month
- , subq_0.booking__ds_partitioned__quarter
- , subq_0.booking__ds_partitioned__year
- , subq_0.booking__paid_at__day
- , subq_0.booking__paid_at__week
- , subq_0.booking__paid_at__month
- , subq_0.booking__paid_at__quarter
- , subq_0.booking__paid_at__year
- , subq_0.ds__day AS metric_time__day
- , subq_0.ds__week AS metric_time__week
- , subq_0.ds__month AS metric_time__month
- , subq_0.ds__quarter AS metric_time__quarter
- , subq_0.ds__year AS metric_time__year
- , subq_0.listing
- , subq_0.guest
- , subq_0.host
- , subq_0.booking__listing
- , subq_0.booking__guest
- , subq_0.booking__host
- , subq_0.is_instant
- , subq_0.booking__is_instant
- , subq_0.bookings
- , subq_0.instant_bookings
- , subq_0.booking_value
- , subq_0.max_booking_value
- , subq_0.min_booking_value
- , subq_0.bookers
- , subq_0.average_booking_value
- , subq_0.referred_bookings
- , subq_0.median_booking_value
- , subq_0.booking_value_p99
- , subq_0.discrete_booking_value_p99
- , subq_0.approximate_continuous_booking_value_p99
- , subq_0.approximate_discrete_booking_value_p99
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- SELECT
- 1 AS bookings
- , CASE WHEN is_instant THEN 1 ELSE 0 END AS instant_bookings
- , bookings_source_src_10001.booking_value
- , bookings_source_src_10001.booking_value AS max_booking_value
- , bookings_source_src_10001.booking_value AS min_booking_value
- , bookings_source_src_10001.guest_id AS bookers
- , bookings_source_src_10001.booking_value AS average_booking_value
- , bookings_source_src_10001.booking_value AS booking_payments
- , CASE WHEN referrer_id IS NOT NULL THEN 1 ELSE 0 END AS referred_bookings
- , bookings_source_src_10001.booking_value AS median_booking_value
- , bookings_source_src_10001.booking_value AS booking_value_p99
- , bookings_source_src_10001.booking_value AS discrete_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_continuous_booking_value_p99
- , bookings_source_src_10001.booking_value AS approximate_discrete_booking_value_p99
- , bookings_source_src_10001.is_instant
- , bookings_source_src_10001.ds AS ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS ds__year
- , bookings_source_src_10001.ds_partitioned AS ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS ds_partitioned__year
- , bookings_source_src_10001.paid_at AS paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS paid_at__year
- , bookings_source_src_10001.is_instant AS booking__is_instant
- , bookings_source_src_10001.ds AS booking__ds__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds) AS booking__ds__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds) AS booking__ds__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds) AS booking__ds__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds) AS booking__ds__year
- , bookings_source_src_10001.ds_partitioned AS booking__ds_partitioned__day
- , DATE_TRUNC('week', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__week
- , DATE_TRUNC('month', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.ds_partitioned) AS booking__ds_partitioned__year
- , bookings_source_src_10001.paid_at AS booking__paid_at__day
- , DATE_TRUNC('week', bookings_source_src_10001.paid_at) AS booking__paid_at__week
- , DATE_TRUNC('month', bookings_source_src_10001.paid_at) AS booking__paid_at__month
- , DATE_TRUNC('quarter', bookings_source_src_10001.paid_at) AS booking__paid_at__quarter
- , DATE_TRUNC('year', bookings_source_src_10001.paid_at) AS booking__paid_at__year
- , bookings_source_src_10001.listing_id AS listing
- , bookings_source_src_10001.guest_id AS guest
- , bookings_source_src_10001.host_id AS host
- , bookings_source_src_10001.listing_id AS booking__listing
- , bookings_source_src_10001.guest_id AS booking__guest
- , bookings_source_src_10001.host_id AS booking__host
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_0
- ) subq_1
- ) subq_2
- GROUP BY
- subq_2.metric_time__day
- ) subq_3
- ) subq_4
- ON
- DATEADD(day, -5, subq_5.metric_time__day) = subq_4.metric_time__day
-) subq_7
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_derived_metric_with_one_input_metric__plan0_optimized.sql b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_derived_metric_with_one_input_metric__plan0_optimized.sql
deleted file mode 100644
index 2416e80d8c..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_derived_metric_with_one_input_metric__plan0_optimized.sql
+++ /dev/null
@@ -1,32 +0,0 @@
--- Compute Metrics via Expressions
-SELECT
- metric_time__day
- , bookings_5_days_ago AS bookings_5_day_lag
-FROM (
- -- Join to Time Spine Dataset
- SELECT
- subq_14.ds AS metric_time__day
- , subq_12.bookings_5_days_ago AS bookings_5_days_ago
- FROM ***************************.mf_time_spine subq_14
- INNER JOIN (
- -- Aggregate Measures
- -- Compute Metrics via Expressions
- SELECT
- metric_time__day
- , SUM(bookings) AS bookings_5_days_ago
- FROM (
- -- Read Elements From Semantic Model 'bookings_source'
- -- Metric Time Dimension 'ds'
- -- Pass Only Elements:
- -- ['bookings', 'metric_time__day']
- SELECT
- ds AS metric_time__day
- , 1 AS bookings
- FROM ***************************.fct_bookings bookings_source_src_10001
- ) subq_10
- GROUP BY
- metric_time__day
- ) subq_12
- ON
- DATEADD(day, -5, subq_14.ds) = subq_12.metric_time__day
-) subq_15
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_common_semantic_model__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_common_semantic_model__plan0.xml
deleted file mode 100644
index 3811850aef..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_common_semantic_model__plan0.xml
+++ /dev/null
@@ -1,1648 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_derived_metric_with_one_input_metric__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_derived_metric_with_one_input_metric__plan0.xml
deleted file mode 100644
index 8501549147..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_derived_metric_with_one_input_metric__plan0.xml
+++ /dev/null
@@ -1,548 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_distinct_values__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_distinct_values__plan0.xml
deleted file mode 100644
index 51d9c8856c..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_distinct_values__plan0.xml
+++ /dev/null
@@ -1,498 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_filter_with_where_constraint_on_join_dim__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_filter_with_where_constraint_on_join_dim__plan0.xml
deleted file mode 100644
index b8b50e9330..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_filter_with_where_constraint_on_join_dim__plan0.xml
+++ /dev/null
@@ -1,1423 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_join_to_scd_dimension__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_join_to_scd_dimension__plan0.xml
deleted file mode 100644
index bd5c867143..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_join_to_scd_dimension__plan0.xml
+++ /dev/null
@@ -1,1105 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_limit_rows__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_limit_rows__plan0.xml
deleted file mode 100644
index c5d3c36c1f..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_limit_rows__plan0.xml
+++ /dev/null
@@ -1,825 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_local_dimension_using_local_entity__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_local_dimension_using_local_entity__plan0.xml
deleted file mode 100644
index d5654b3b2f..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_local_dimension_using_local_entity__plan0.xml
+++ /dev/null
@@ -1,559 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint__plan0.xml
deleted file mode 100644
index fcedb12803..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint__plan0.xml
+++ /dev/null
@@ -1,3701 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint_with_reused_measure__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint_with_reused_measure__plan0.xml
deleted file mode 100644
index 936cf53cd2..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint_with_reused_measure__plan0.xml
+++ /dev/null
@@ -1,1697 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint_with_single_expr_and_alias__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint_with_single_expr_and_alias__plan0.xml
deleted file mode 100644
index 9448915324..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_measure_constraint_with_single_expr_and_alias__plan0.xml
+++ /dev/null
@@ -1,864 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.xml
deleted file mode 100644
index 22c76330ac..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.xml
+++ /dev/null
@@ -1,1366 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multi_hop_through_scd_dimension__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multi_hop_through_scd_dimension__plan0.xml
deleted file mode 100644
index 0e45f45d49..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multi_hop_through_scd_dimension__plan0.xml
+++ /dev/null
@@ -1,1597 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multi_hop_to_scd_dimension__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multi_hop_to_scd_dimension__plan0.xml
deleted file mode 100644
index 67926e1bcb..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multi_hop_to_scd_dimension__plan0.xml
+++ /dev/null
@@ -1,1443 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multihop_node__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multihop_node__plan0.xml
deleted file mode 100644
index fd39b3fa96..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multihop_node__plan0.xml
+++ /dev/null
@@ -1,1231 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multiple_metrics_no_dimensions__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multiple_metrics_no_dimensions__plan0.xml
deleted file mode 100644
index 1892a3747a..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_multiple_metrics_no_dimensions__plan0.xml
+++ /dev/null
@@ -1,2030 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_partitioned_join__plan0.xml b/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_partitioned_join__plan0.xml
deleted file mode 100644
index 057644727a..0000000000
--- a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/test_partitioned_join__plan0.xml
+++ /dev/null
@@ -1,870 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_common_semantic_model__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_distinct_values__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_join_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_limit_rows__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_local_dimension_using_local_entity__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_reused_measure__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_through_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multi_hop_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multihop_node__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_multiple_metrics_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/BigQuery/test_partitioned_join__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_common_semantic_model__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_distinct_values__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_distinct_values__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_distinct_values__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_distinct_values__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_distinct_values__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_distinct_values__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_distinct_values__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_distinct_values__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_join_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_limit_rows__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_limit_rows__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_limit_rows__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_limit_rows__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_limit_rows__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_limit_rows__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_limit_rows__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_limit_rows__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_local_dimension_using_local_entity__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_reused_measure__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_through_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multi_hop_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multihop_node__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multihop_node__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multihop_node__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multihop_node__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multihop_node__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multihop_node__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multihop_node__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multihop_node__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_multiple_metrics_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Databricks/test_partitioned_join__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_common_semantic_model__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_distinct_values__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_join_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_limit_rows__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_local_dimension_using_local_entity__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_reused_measure__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_through_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multi_hop_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multihop_node__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_multiple_metrics_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/DuckDB/test_partitioned_join__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_common_semantic_model__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_distinct_values__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_distinct_values__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_distinct_values__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_distinct_values__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_distinct_values__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_distinct_values__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_distinct_values__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_distinct_values__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_join_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_limit_rows__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_limit_rows__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_limit_rows__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_limit_rows__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_limit_rows__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_limit_rows__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_limit_rows__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_limit_rows__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_local_dimension_using_local_entity__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_reused_measure__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_through_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multi_hop_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multihop_node__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multihop_node__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multihop_node__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multihop_node__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multihop_node__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multihop_node__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multihop_node__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multihop_node__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_multiple_metrics_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Postgres/test_partitioned_join__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_common_semantic_model__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_distinct_values__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_distinct_values__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_distinct_values__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_distinct_values__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_distinct_values__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_distinct_values__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_distinct_values__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_distinct_values__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_join_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_limit_rows__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_limit_rows__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_limit_rows__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_limit_rows__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_limit_rows__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_limit_rows__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_limit_rows__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_limit_rows__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_local_dimension_using_local_entity__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_reused_measure__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_through_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multi_hop_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multihop_node__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multihop_node__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multihop_node__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multihop_node__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multihop_node__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multihop_node__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multihop_node__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multihop_node__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_multiple_metrics_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Redshift/test_partitioned_join__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_common_semantic_model__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_distinct_values__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_filter_with_where_constraint_on_join_dim__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_join_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_limit_rows__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_local_dimension_using_local_entity__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_reused_measure__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_measure_constraint_with_single_expr_and_alias__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_metric_with_measures_from_multiple_sources_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_through_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multi_hop_to_scd_dimension__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multihop_node__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_multiple_metrics_no_dimensions__plan0_optimized.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0.sql
diff --git a/metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0_optimized.sql b/metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0_optimized.sql
similarity index 100%
rename from metricflow/test/snapshots/test_dataflow_to_sql_plan.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0_optimized.sql
rename to metricflow/test/snapshots/test_query_rendering.py/SqlQueryPlan/Snowflake/test_partitioned_join__plan0_optimized.sql