Skip to content

Commit 5b93695

Browse files
fix tests
1 parent ae453b9 commit 5b93695

File tree

6 files changed

+31
-6
lines changed

6 files changed

+31
-6
lines changed

cirq-core/cirq/testing/__init__.py

+6-1
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,12 @@
6969

7070
from cirq.testing.equivalent_repr_eval import assert_equivalent_repr
7171

72-
from cirq.testing.gate_features import SingleQubitGate, TwoQubitGate, ThreeQubitGate
72+
from cirq.testing.gate_features import (
73+
SingleQubitGate,
74+
TwoQubitGate,
75+
ThreeQubitGate,
76+
DoesNotSupportSerializationGate,
77+
)
7378

7479
from cirq.testing.json import assert_json_roundtrip_works
7580

cirq-core/cirq/testing/gate_features.py

+10
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,13 @@ class ThreeQubitGate(raw_types.Gate):
3636

3737
def _num_qubits_(self) -> int:
3838
return 3
39+
40+
41+
class DoesNotSupportSerializationGate(raw_types.Gate):
42+
"""A gate that can't be serialized."""
43+
44+
def __init__(self, n_qubits: int = 1):
45+
self.n_qubits = n_qubits
46+
47+
def _num_qubits_(self) -> int:
48+
return self.n_qubits

cirq-google/cirq_google/devices/grid_device_test.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -387,7 +387,9 @@ def test_grid_device_validate_operations_negative():
387387
device.validate_operation(cirq.CZ(q00, q10))
388388

389389
with pytest.raises(ValueError, match='gate which is not supported'):
390-
device.validate_operation(cirq.H(device_info.grid_qubits[0]))
390+
device.validate_operation(
391+
cirq.testing.DoesNotSupportSerializationGate()(device_info.grid_qubits[0])
392+
)
391393

392394

393395
@pytest.mark.parametrize(

cirq-google/cirq_google/engine/engine_processor_test.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,9 @@ def test_get_device():
288288
with pytest.raises(ValueError):
289289
device.validate_operation(cirq.X(cirq.GridQubit(1, 2)))
290290
with pytest.raises(ValueError):
291-
device.validate_operation(cirq.H(cirq.GridQubit(0, 0)))
291+
device.validate_operation(
292+
cirq.testing.DoesNotSupportSerializationGate()(cirq.GridQubit(0, 0))
293+
)
292294
with pytest.raises(ValueError):
293295
device.validate_operation(cirq.CZ(cirq.GridQubit(1, 1), cirq.GridQubit(2, 2)))
294296

cirq-google/cirq_google/engine/engine_test.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -824,6 +824,8 @@ def test_get_engine_device(get_processor):
824824
with pytest.raises(ValueError):
825825
device.validate_operation(cirq.X(cirq.GridQubit(1, 2)))
826826
with pytest.raises(ValueError):
827-
device.validate_operation(cirq.H(cirq.GridQubit(0, 0)))
827+
device.validate_operation(
828+
cirq.testing.DoesNotSupportSerializationGate()(cirq.GridQubit(0, 0))
829+
)
828830
with pytest.raises(ValueError):
829831
device.validate_operation(cirq.CZ(cirq.GridQubit(1, 1), cirq.GridQubit(2, 2)))

cirq-google/cirq_google/engine/virtual_engine_factory_test.py

+6-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ def _test_processor(processor: cg.engine.abstract_processor.AbstractProcessor):
3535
circuit = cirq.Circuit(cirq.X(bad_qubit), cirq.measure(bad_qubit))
3636
with pytest.raises(ValueError, match='Qubit not on device'):
3737
_ = processor.run(circuit, repetitions=100)
38-
circuit = cirq.Circuit(cirq.H(good_qubit), cirq.measure(good_qubit))
38+
circuit = cirq.Circuit(
39+
cirq.testing.DoesNotSupportSerializationGate()(good_qubit), cirq.measure(good_qubit)
40+
)
3941
with pytest.raises(ValueError, match='Cannot serialize op'):
4042
_ = processor.run(circuit, repetitions=100)
4143

@@ -195,7 +197,9 @@ def test_create_default_noisy_quantum_virtual_machine():
195197
with pytest.raises(ValueError, match='Qubit not on device'):
196198
_ = processor.run(circuit, repetitions=100)
197199
good_qubit = cirq.GridQubit(5, 4)
198-
circuit = cirq.Circuit(cirq.H(good_qubit), cirq.measure(good_qubit))
200+
circuit = cirq.Circuit(
201+
cirq.testing.DoesNotSupportSerializationGate()(good_qubit), cirq.measure(good_qubit)
202+
)
199203
with pytest.raises(ValueError, match='.* contains a gate which is not supported.'):
200204
_ = processor.run(circuit, repetitions=100)
201205
device_specification = processor.get_device_specification()

0 commit comments

Comments
 (0)