def setup_method(self, method):
     self.bomb = Bomb("IPZCV0", 2, has_parallel=True)
class TestBomb(object):
    def setup_method(self, method):
        self.bomb = Bomb("IPZCV0", 2, has_parallel=True)

    def test_initialization(self):
        assert self.bomb.n_strikes == 0

    def test_strike(self):
        self.bomb.strike()
        assert self.bomb.n_strikes == 1
        self.bomb.strike()
        assert self.bomb.n_strikes == 2

    def test_wires(self):
        assert self.bomb.wires("yby") == "SECOND"

    def test_button(self):
        assert self.bomb.button("detonate", "r") == "PRESS and immediately RELEASE"

    def test_keypad(self):
        assert self.bomb.keypad("six", "para", "an", "smile") == ["six", "para", "an", "smile"]
        assert self.bomb.keypad("six", "ae", "i", "psi") == ["six", "ae", "psi", "i"]

    def test_simon_says(self):
        pass

    def test_whos_on_first(self):
        pass

    def test_memory(self):
        pass

    def test_morse(self):
        pass

    def test_complicated(self):
        pass

    def test_sequences(self):
        pass

    def test_maze(self):
        assert self.bomb.maze((4, 2), (5, 0), (2, 4)) == [
            "left",
            "down",
            "left",
            "left",
            "left",
            "left",
            "down",
            "right",
            "down",
            "right",
            "right",
            "down",
            "left",
        ]

    def test_passwords(self):
        pass

    def test_venting(self):
        assert self.bomb.venting() == "YES"

    def test_capacitor(self):
        assert self.bomb.capacitor() == "HOLD DOWN LEVER"

    def test_knob(self):
        assert self.bomb.knob("000010") == "LEFT"