code: def test_week_and_time_composed_rule(self, rule_type):
      week_rule = (
          NthTradingDayOfWeek(0)
          if rule_type == "week_start"
          else NDaysBeforeLastTradingDayOfWeek(4)
      )
      time_rule = AfterOpen(minutes=60)
  
      week_rule.cal = self.cal
      time_rule.cal = self.cal
  
      composed_rule = week_rule & time_rule
  
      should_trigger = composed_rule.should_trigger
  
      week_minutes = self.cal.minutes_for_sessions_in_range(
          pd.Timestamp("2014-01-06", tz="UTC"),
          pd.Timestamp("2014-01-10", tz="UTC"),
      )
  
      dt = pd.Timestamp("2014-01-06 14:30:00", tz="UTC")
      trigger_day_offset = 0
      trigger_minute_offset = 60
      n_triggered = 0
  
      for m in week_minutes:
          if should_trigger(m):
              self.assertEqual(
                  m,
                  dt
                  + timedelta(days=trigger_day_offset)
                  + timedelta(minutes=trigger_minute_offset),
              )
              n_triggered += 1
  
      self.assertEqual(n_triggered, 1)
  
file_path: zipline/tests/events/test_events_nyse.py
imports: from functools import partial
  from unittest import TestCase
  from datetime import timedelta
  import pandas
  from nose_parameterized import parameterized
  from zipline.utils.events import NDaysBeforeLastTradingDayOfWeek, AfterOpen, BeforeClose
  from zipline.utils.events import NthTradingDayOfWeek
  from .test_events import StatelessRulesTests, StatefulRulesTests, minutes_for_days
label_desc: Use image node_id 2 for calling the TestStatelessRulesNYSE obj's underlying member method code with example usage: obj.test_week_and_time_composed_rule(rule_type) without return types