code: def _test_bts_simulation_dt(self):
      code = """
  def initialize(context):
      pass
  """
      algo = TradingAlgorithm(
          script=code, sim_params=self.sim_params, env=self.env
      )
  
      algo.perf_tracker = PerformanceTracker(
          sim_params=self.sim_params,
          trading_calendar=self.trading_calendar,
          env=self.env,
      )
  
      dt = pd.Timestamp("2016-08-04 9:13:14", tz="US/Eastern")
      algo_simulator = AlgorithmSimulator(
          algo,
          self.sim_params,
          self.data_portal,
          BeforeTradingStartsOnlyClock(dt),
          algo._create_benchmark_source(),
          NoRestrictions(),
          None,
      )
  
      # run through the algo's simulation
      list(algo_simulator.transform())
  
      # since the clock only ever emitted a single before_trading_start
      # event, we can check that the simulation_dt was properly set
      self.assertEqual(dt, algo_simulator.simulation_dt)
  
imports: from datetime import time
  import pandas
  from mock import patch
  from nose_parameterized import parameterized
  from six.moves import range
  from catalyst import TradingAlgorithm
  from catalyst.gens.sim_engine import BEFORE_TRADING_START_BAR
  from catalyst.finance.performance import PerformanceTracker
  from catalyst.finance.asset_restrictions import NoRestrictions
  from catalyst.gens.tradesimulation import AlgorithmSimulator
  from catalyst.sources.benchmark_source import BenchmarkSource
  from catalyst.test_algorithms import NoopAlgorithm
  from catalyst.testing.fixtures import WithDataPortal, WithSimParams, WithTradingEnvironment, CatalystTestCase
  from catalyst.utils import factory
  from catalyst.testing.core import FakeDataPortal
  from catalyst.utils.calendars.trading_calendar import days_at_time
label_desc: Use image node_id 1 for calling the TestBeforeTradingStartSimulationDt obj's underlying member method code with example usage: obj._test_bts_simulation_dt() without return types