def test_condition_missing(self) -> None:
     body = DummyPulseTemplate(requires_stop=False)
     t = LoopPulseTemplate('foo_cond', body)
     sequencer = DummySequencer()
     block = DummyInstructionBlock()
     with self.assertRaises(ConditionMissingException):
         t.requires_stop({}, {})
         t.build_sequence(sequencer, {}, {}, block)
 def test_condition_missing(self) -> None:
     body = DummyPulseTemplate(requires_stop=False)
     t = LoopPulseTemplate('foo_cond', body)
     sequencer = DummySequencer()
     block = DummyInstructionBlock()
     with self.assertRaises(ConditionMissingException):
         t.requires_stop({}, {})
         t.build_sequence(sequencer, {}, {}, block)
    def test_requires_stop(self) -> None:
        condition = DummyCondition(requires_stop=False)
        conditions = {'foo_cond': condition}
        body = DummyPulseTemplate(requires_stop=False)
        t = LoopPulseTemplate('foo_cond', body)
        self.assertFalse(t.requires_stop({}, conditions))

        condition.requires_stop_ = True
        self.assertTrue(t.requires_stop({}, conditions))

        body.requires_stop_ = True
        condition.requires_stop_ = False
        self.assertFalse(t.requires_stop({}, conditions))
    def test_requires_stop(self) -> None:
        condition = DummyCondition(requires_stop=False)
        conditions = {'foo_cond': condition}
        body = DummyPulseTemplate(requires_stop=False)
        t = LoopPulseTemplate('foo_cond', body)
        self.assertFalse(t.requires_stop({}, conditions))

        condition.requires_stop_ = True
        self.assertTrue(t.requires_stop({}, conditions))

        body.requires_stop_ = True
        condition.requires_stop_ = False
        self.assertFalse(t.requires_stop({}, conditions))