code: def test_list_dimensions(
      cli_runner: MetricFlowCliRunner,
  ) -> None:  # noqa: D
      resp = cli_runner.run(dimensions, args=["--metrics", "bookings"])
  
      assert "ds" in resp.output
      assert resp.exit_code == 0
  
imports: from __future__ import annotations
  import logging
  import shutil
  import textwrap
  from contextlib import contextmanager
  from pathlib import Path
  from typing import Iterator
  import pytest
  from _pytest.fixtures import FixtureRequest
  from dbt_semantic_interfaces.parsing.dir_to_model import parse_yaml_files_to_validation_ready_semantic_manifest
  from dbt_semantic_interfaces.parsing.objects import YamlConfigFile
  from dbt_semantic_interfaces.test_utils import base_semantic_manifest_file
  from metricflow.cli.cli_context import CLIContext
  from metricflow.cli.main import dimension_values, dimensions, entities, health_checks, metrics, query, tutorial, validate_configs
  from metricflow.protocols.sql_client import SqlClient, SqlEngine
  from metricflow.test.fixtures.cli_fixtures import MetricFlowCliRunner
  from metricflow.test.fixtures.setup_fixtures import MetricFlowTestSessionState
  from metricflow.test.model.example_project_configuration import EXAMPLE_PROJECT_CONFIGURATION_YAML_CONFIG_FILE
  from metricflow.test.snapshot_utils import assert_object_snapshot_equal
label_desc: Use image node_id 2 for calling a global function with example usage: test_list_dimensions(cli_runner) without return types