def test_overlaping_qubits(): moments = Moments([h(0), h(0)]) assert moments.depth == 2 moments.add([cnot(0, 3), h(1)]) assert moments.depth == 3 moments.add([cnot(2, 4)]) assert moments.depth == 3
def test_add(): moments = Moments() moments.add([h(0)]) moments.add([h(0)]) expected = OrderedDict() expected[MomentsKey(0, QubitSet(0), "gate", 0)] = h(0) expected[MomentsKey(1, QubitSet(0), "gate", 0)] = h(0) assert OrderedDict(moments) == expected
def test_depth(): moments = Moments([h(0), h(1)]) assert moments.depth == 1 moments.add([cnot(0, 2), h(3)]) assert moments.depth == 2
def test_constructor_with_instructions(): moments = Moments([h(0), h(1)]) expected = Moments() expected.add([h(0)]) expected.add([h(1)]) assert moments == expected