code: def cli_context(  # noqa: D
      sql_client: SqlClient,
      simple_semantic_manifest: SemanticManifest,
      create_source_tables: bool,
  ) -> Generator[CLIContext, None, None]:
      semantic_manifest_lookup = SemanticManifestLookup(
          simple_semantic_manifest
      )
      mf_engine = MetricFlowEngine(
          semantic_manifest_lookup=semantic_manifest_lookup,
          sql_client=sql_client,
          column_association_resolver=DunderColumnAssociationResolver(
              semantic_manifest_lookup=semantic_manifest_lookup
          ),
          time_source=ConfigurableTimeSource(as_datetime("2020-01-01")),
      )
      context = FakeCLIContext()
      context._mf = mf_engine
      context._sql_client = sql_client
      context._semantic_manifest = simple_semantic_manifest
      context._semantic_manifest_lookup = semantic_manifest_lookup
      with tempfile.NamedTemporaryFile() as file:
          context._log_file_path = pathlib.Path(file.name)
          yield context
  
imports: from __future__ import annotations
  import os
  import pathlib
  import tempfile
  from typing import Generator, Optional, Sequence
  import click
  import pytest
  from click.testing import CliRunner, Result
  from dbt_semantic_interfaces.protocols.semantic_manifest import SemanticManifest
  from dbt_semantic_interfaces.test_utils import as_datetime
  from typing_extensions import override
  from metricflow.cli.cli_context import CLIContext
  from metricflow.cli.dbt_connectors.dbt_config_accessor import dbtArtifacts, dbtProjectMetadata
  from metricflow.engine.metricflow_engine import MetricFlowEngine
  from metricflow.model.semantic_manifest_lookup import SemanticManifestLookup
  from metricflow.plan_conversion.column_resolver import DunderColumnAssociationResolver
  from metricflow.protocols.sql_client import SqlClient
  from metricflow.test.fixtures.setup_fixtures import dbt_project_dir
  from metricflow.test.time.configurable_time_source import ConfigurableTimeSource
label_desc: Use image node_id 1 for calling a global function with example usage: cli_context(sql_client, simple_semantic_manifest, create_source_tables) without return types