Skip to content

Commit 99ed89a

Browse files
committed
Add backwards comptability test for real amplitude circuits
1 parent 9c6baac commit 99ed89a

1 file changed

Lines changed: 21 additions & 2 deletions

File tree

test/qpy_compat/test_qpy.py

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -918,6 +918,17 @@ def generate_v14_expr():
918918
]
919919

920920

921+
def generate_real_amplitude_circuits():
922+
"""Real-amplitudes 2-local circuit`."""
923+
from qiskit.circuit.library import RealAmplitudes
924+
from qiskit import transpile
925+
926+
circuit = RealAmplitudes(num_qubits=2, reps=2)
927+
isa_circuit = transpile(circuit.decompose(), optimization_level=0)
928+
929+
return [circuit, isa_circuit]
930+
931+
921932
def generate_box():
922933
"""Circuits that contain `Box`. Only added in Qiskit 2.0."""
923934
bare = QuantumCircuit(2, name="box-bare")
@@ -960,6 +971,8 @@ def generate_circuits(version_parts, current_version, load_context=False):
960971
generate_single_clbit_condition_teleportation(current_version)
961972
]
962973

974+
output_circuits["real_amplitude.qpy"] = generate_real_amplitude_circuits()
975+
963976
if version_parts >= (0, 19, 0):
964977
output_circuits["param_phase.qpy"] = generate_param_phase()
965978

@@ -1109,8 +1122,14 @@ def load_qpy(qpy_files, version_parts):
11091122
# See https://github.com/Qiskit/qiskit/pull/13814
11101123
continue
11111124
print(f"Loading qpy file: {path}") # noqa: T201
1112-
with open(path, "rb") as fd:
1113-
qpy_circuits = load(fd)
1125+
try:
1126+
with open(path, "rb") as fd:
1127+
qpy_circuits = load(fd)
1128+
except Exception as ex:
1129+
msg = f"****QPY Load error****: Failed to load {path} with the exception: {ex}"
1130+
sys.stderr.write(msg)
1131+
sys.exit(1)
1132+
11141133
equivalent = path in {"open_controlled_gates.qpy", "controlled_gates.qpy"}
11151134
for i, circuit in enumerate(circuits):
11161135
bind = None

0 commit comments

Comments
 (0)