def test_torch_block_change(self): """ Torches change block type depending on their status. They don't change metadata, though. """ metadata = blocks["redstone-torch"].orientation("-x") torch = Torch((0, 0, 0), blocks["redstone-torch"].slot, metadata) torch.status = False self.assertEqual( torch.to_block(blocks["redstone-torch"].slot, metadata), (blocks["redstone-torch-off"].slot, metadata))
def test_update_wires_single_powered(self): torch = Torch((0, 0, 0), blocks["redstone-torch"].slot, blocks["redstone-torch"].orientation("-x")) wire = Wire((1, 0, 0), blocks["redstone-wire"].slot, 0x0) plain = PlainBlock((2, 0, 0), blocks["sand"].slot, 0x0) torch.connect(self.asic) wire.connect(self.asic) plain.connect(self.asic) torch.status = True wires, outputs = self.asic.update_wires(1, 0, 0) self.assertTrue(wire in wires) self.assertTrue(plain in outputs) self.assertTrue(wire.status) self.assertEqual(wire.metadata, 15)