def test_items(): moments = Moments([h(0), h(0), h(1)]) expected = [ (MomentsKey(0, QubitSet(0), "gate", 0), h(0)), (MomentsKey(1, QubitSet(0), "gate", 0), h(0)), (MomentsKey(0, QubitSet(1), "gate", 0), h(1)), ] assert list(moments.items()) == expected
def test_keys(): moments = Moments([h(0), h(0), h(1)]) expected = [ MomentsKey(0, QubitSet(0), "gate", 0), MomentsKey(1, QubitSet(0), "gate", 0), MomentsKey(0, QubitSet(1), "gate", 0), ] assert list(moments.keys()) == expected
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_contains(): moments = Moments([h(0), h(0)]) assert MomentsKey(0, QubitSet(0), "gate", 0) in moments assert MomentsKey(0, QubitSet(100), "gate", 0) not in moments
def test_getitem(): moments = Moments([h(0)]) assert moments[MomentsKey(0, QubitSet(0), "gate", 0)] == h(0)
def test_get(): moments = Moments([h(0)]) unknown_key = MomentsKey(100, QubitSet(100), "gate", 0) assert moments.get(MomentsKey(0, QubitSet(0), "gate", 0)) == h(0) assert moments.get(unknown_key) is None assert moments.get(unknown_key, h(0)) == h(0)