code: def test_snapshot_repository() -> None:
      """Tests that the snapshot repository loads snapshot YAML files correctly."""
      repo = SqlTableSnapshotRepository(
          config_directory=Path(os.path.dirname(__file__))
      )
      assert len(repo.table_snapshots) == 1
  
      # Replace the filepath so it can be compared consistently between hosts.
      example_snapshot = repo.table_snapshots[0]
      dummy_file_path = Path("/a/b/c")
      snapshot_to_check = SqlTableSnapshot(
          table_name=example_snapshot.table_name,
          column_definitions=example_snapshot.column_definitions,
          rows=example_snapshot.rows,
          file_path=dummy_file_path,
      )
  
      assert snapshot_to_check == SqlTableSnapshot(
          table_name="example_table",
          column_definitions=(
              SqlTableColumnDefinition(
                  name="user_id", type=SqlTableColumnType.INT
              ),
              SqlTableColumnDefinition(
                  name="name", type=SqlTableColumnType.STRING
              ),
              SqlTableColumnDefinition(
                  name="balance", type=SqlTableColumnType.FLOAT
              ),
              SqlTableColumnDefinition(
                  name="is_active", type=SqlTableColumnType.BOOLEAN
              ),
          ),
          rows=(
              ("0", "user0", "0.0", "False"),
              ("1", "user1", "0.1", "True"),
          ),
          file_path=dummy_file_path,
      )
  
file_path: metricflow/metricflow/test/table_snapshot/test_table_snapshots.py
imports: from __future__ import annotations
  import os
  from pathlib import Path
  import pandas
  import pytest
  from dbt_semantic_interfaces.test_utils import as_datetime
  from metricflow.protocols.sql_client import SqlEngine
  from metricflow.random_id import random_id
  from metricflow.test.compare_df import assert_dataframes_equal
  from metricflow.test.fixtures.setup_fixtures import MetricFlowTestSessionState
  from metricflow.test.fixtures.sql_clients.ddl_sql_client import SqlClientWithDDLMethods
  from metricflow.test.table_snapshot.table_snapshots import SqlTableColumnDefinition, SqlTableColumnType, SqlTableSnapshot, SqlTableSnapshotLoader, SqlTableSnapshotRepository
label_desc: Use image node_id 4 for calling a global function with example usage: test_snapshot_repository() without return types