def test_iter_waveform_exceptions(self) -> None: wf1 = DummyWaveform(duration=7) wf2 = DummyWaveform(duration=5) wf3 = DummyWaveform(duration=3) repeated_block = InstructionBlock() repeated_block.add_instruction_meas([('m', 1, 2)]) repeated_block.add_instruction_exec(wf2) repeated_block.add_instruction_exec(wf1) main_block = InstructionBlock() main_block.add_instruction_exec(wf1) main_block.add_instruction_repj(2, repeated_block) main_block.add_instruction_exec(wf3) main_block.add_instruction_goto(repeated_block) with self.assertRaises(NotImplementedError): list(iter_waveforms(main_block)) repeated_block.add_instruction(DummyInstruction()) with self.assertRaises(NotImplementedError): list(iter_waveforms(main_block)) main_block = InstructionBlock() main_block.add_instruction_stop() with self.assertRaises(StopIteration): next(iter_waveforms(main_block))
def test_iter_instruction_block_exceptions(self) -> None: wf1 = DummyWaveform(duration=7) wf2 = DummyWaveform(duration=5) wf3 = DummyWaveform(duration=3) repeated_block = InstructionBlock() repeated_block.add_instruction_meas([('m', 1, 2)]) repeated_block.add_instruction_exec(wf2) main_block = InstructionBlock() main_block.add_instruction_exec(wf1) main_block.add_instruction_repj(2, repeated_block) main_block.add_instruction_exec(wf3) repeated_block.add_instruction_goto(main_block) with self.assertRaises(NotImplementedError): iter_instruction_block(main_block, False) repeated_block = InstructionBlock() repeated_block.add_instruction_meas([('m', 1, 2)]) repeated_block.add_instruction_exec(wf2) repeated_block.add_instruction(DummyInstruction()) main_block = InstructionBlock() main_block.add_instruction_exec(wf1) main_block.add_instruction_repj(2, repeated_block) main_block.add_instruction_exec(wf3) with self.assertRaises(NotImplementedError): iter_instruction_block(main_block, False)
def test_render_unsupported_instructions(self) -> None: block = InstructionBlock() block.add_instruction(DummyInstruction()) with self.assertRaises(NotImplementedError): render(block)