code: def _test_partial_month(self):
      start_session = self.trading_calendar.minute_to_session_label(
          pd.Timestamp("1993-02-01", tz="UTC")
      )
  
      # 1992 and 1996 were leap years
      total_days = 365 * 5 + 2
      end_session = start_session + datetime.timedelta(days=total_days)
      sim_params90s = SimulationParameters(
          start_session=start_session,
          end_session=end_session,
          trading_calendar=self.trading_calendar,
      )
  
      returns = factory.create_returns_from_range(sim_params90s)
      returns = returns[
          :-10
      ]  # truncate the returns series to end mid-month
      metrics = risk.RiskReport(
          returns,
          sim_params90s,
          trading_calendar=self.trading_calendar,
          treasury_curves=self.env.treasury_curves,
          benchmark_returns=self.env.benchmark_returns,
      )
      total_months = 60
      self.check_metrics(metrics, total_months, start_session)
  
imports: import datetime
  import calendar
  import pandas
  import numpy
  import catalyst.finance.risk
  from catalyst.utils import factory
  from catalyst.finance.trading import SimulationParameters
  from catalyst.testing.fixtures import WithTradingEnvironment, CatalystTestCase
  from catalyst.finance.risk.period import RiskMetricsPeriod
label_desc: Use image node_id 17 for calling the TestRisk obj's underlying member method code with example usage: obj._test_partial_month() without return types