示例#1
0
def test_happy_case(observables, qubits):
    criteria = ObservableCriteria(observables=observables, qubits=qubits)
    assert criteria.applicable_key_types() == [
        CriteriaKey.OBSERVABLE,
        CriteriaKey.QUBIT,
    ]
    if observables is None:
        assert CriteriaKeyResult.ALL == criteria.get_keys(
            CriteriaKey.OBSERVABLE)
    else:
        assert Observable.X in criteria.get_keys(CriteriaKey.OBSERVABLE)
    if qubits is None:
        assert CriteriaKeyResult.ALL == criteria.get_keys(CriteriaKey.QUBIT)
    else:
        assert 1 in criteria.get_keys(CriteriaKey.QUBIT)
示例#2
0
def test_get_keys_for_unknown_keytypes():
    criteria = ObservableCriteria(observables=[Observable.X], qubits=0)
    result = criteria.get_keys(CriteriaKey.UNITARY_GATE)
    assert len(result) == 0