Ejemplo n.º 1
0
def test_anneal_minimize_calls_trace_func():
    trace_func = mock.Mock()

    anneal.anneal_minimize(
        'initial', lambda s: 1.0 if s == 'initial' else 0.0,
        lambda s: 'better', lambda: 1.0, 1.0, 0.5, 0.5, 1,
        trace_func=trace_func)

    trace_func.assert_has_calls([mock.call('initial', 1.0, 1.0, 1.0, True),
                                 mock.call('better', 1.0, 0.0, 1.0, True)])
Ejemplo n.º 2
0
def test_find_sequence_assembles_head_and_tail():
    q00 = GridQubit(0, 0)
    q01 = GridQubit(0, 1)
    q02 = GridQubit(0, 2)
    qubits = [q00, q01, q02]
    start = q01
    search = GreedySequenceSearch(_create_device(qubits), start)
    with mock.patch.object(search, '_sequence_search') as sequence_search:
        head = [q01, q00]
        tail = [q01, q02]
        sequence_search.side_effect = [tail, head]
        assert search._find_sequence() == qubits
        sequence_search.assert_has_calls(
            [mock.call(start, []), mock.call(start, tail)])
Ejemplo n.º 3
0
def test_find_sequence_assembles_head_and_tail():
    q00 = cirq.GridQubit(0, 0)
    q01 = cirq.GridQubit(0, 1)
    q02 = cirq.GridQubit(0, 2)
    qubits = [q00, q01, q02]
    start = q01
    search = greedy.GreedySequenceSearch(_create_device(qubits), start)
    with mock.patch.object(search, '_sequence_search') as sequence_search:
        head = [q01, q00]
        tail = [q01, q02]
        sequence_search.side_effect = [tail, head]
        assert search._find_sequence() == qubits
        sequence_search.assert_has_calls(
            [mock.call(start, []),
             mock.call(start, tail)])