Esempio n. 1
0
def test_moment_is_measurements():
    q = cirq.LineQubit.range(2)
    circ = cirq.Circuit.from_ops(
        [cirq.X(q[0]), cirq.X(q[1]),
         cirq.measure(*q, key='z')])
    assert not _homogeneous_moment_is_measurements(circ[0])
    assert _homogeneous_moment_is_measurements(circ[1])
Esempio n. 2
0
def test_moment_is_measurements_mixed2():
    q = cirq.LineQubit.range(2)
    circ = cirq.Circuit.from_ops([
        cirq.X(q[0]),
        cirq.X(q[1]),
        cirq.Z(q[0]),
        cirq.measure(q[1], key='z'),
    ])
    assert not _homogeneous_moment_is_measurements(circ[0])
    with pytest.raises(ValueError) as e:
        _homogeneous_moment_is_measurements(circ[1])
    assert e.match(".*must be homogeneous: all measurements.*")