Skip to content

Commit 5a0dab0

Browse files
committed
Fix conflict for real
1 parent a1dce18 commit 5a0dab0

File tree

1 file changed

+14
-28
lines changed

1 file changed

+14
-28
lines changed

test/python/transpiler/test_preset_passmanagers.py

+14-28
Original file line numberDiff line numberDiff line change
@@ -238,18 +238,23 @@ def test_no_coupling_map(self, level):
238238

239239
@combine(level=[0, 1, 2, 3], name="level{level}")
240240
def test_7677(self, level):
241-
"""Melbourne (with inconsistency configuration/properties) should not fail with noise_adaptive
241+
"""Backends with inconsistency in configuration/properties should not fail with noise_adaptive
242242
See: https://github.com/Qiskit/qiskit/issues/7677
243243
"""
244244
qc = QuantumCircuit(12) # circuit has 12 qubits (and only uses 3)
245245
qc.cx(1, 8)
246246
qc.cx(1, 11)
247-
backend = FakeMelbourne()
247+
backend = Fake20QV1()
248+
# add extra qubit to properties to reproduce
249+
# Melbourne's inconsistency with configuration
250+
backend.properties().qubits.append(backend.properties().qubits[-1])
248251

249252
result = transpile(qc, backend, layout_method="noise_adaptive", optimization_level=level)
250253

251254
self.assertIsInstance(result, QuantumCircuit)
252-
self.assertEqual(result.num_qubits, 14)
255+
# the final num. qubits should be consistent
256+
# with the configuration
257+
self.assertEqual(result.num_qubits, 20)
253258

254259
def test_layout_3239(self, level=3):
255260
"""Test final layout after preset level3 passmanager does not include diagonal gates
@@ -934,7 +939,8 @@ class TestFinalLayouts(QiskitTestCase):
934939

935940
@data(0, 1, 2, 3)
936941
def test_layout_tokyo_2845(self, level):
937-
"""Test that final layout in tokyo #2845
942+
"""Test that final layout in a Tokyo-like device
943+
is not the trivial layout for optimization level>0
938944
See: https://github.com/Qiskit/qiskit-terra/issues/2845
939945
"""
940946
qr1 = QuantumRegister(3, "qr1")
@@ -990,29 +996,7 @@ def test_layout_tokyo_2845(self, level):
990996
18: Qubit(QuantumRegister(15, "ancilla"), 14),
991997
19: Qubit(QuantumRegister(2, "qr2"), 0),
992998
}
993-
# layout for ibm_Tokyo
994-
# vf2_layout = {
995-
# 0: Qubit(QuantumRegister(15, "ancilla"), 0),
996-
# 1: Qubit(QuantumRegister(15, "ancilla"), 1),
997-
# 2: Qubit(QuantumRegister(15, "ancilla"), 2),
998-
# 3: Qubit(QuantumRegister(15, "ancilla"), 3),
999-
# 4: Qubit(QuantumRegister(15, "ancilla"), 4),
1000-
# 5: Qubit(QuantumRegister(15, "ancilla"), 5),
1001-
# 6: Qubit(QuantumRegister(3, "qr1"), 1),
1002-
# 7: Qubit(QuantumRegister(15, "ancilla"), 6),
1003-
# 8: Qubit(QuantumRegister(15, "ancilla"), 7),
1004-
# 9: Qubit(QuantumRegister(15, "ancilla"), 8),
1005-
# 10: Qubit(QuantumRegister(3, "qr1"), 0),
1006-
# 11: Qubit(QuantumRegister(3, "qr1"), 2),
1007-
# 12: Qubit(QuantumRegister(15, "ancilla"), 9),
1008-
# 13: Qubit(QuantumRegister(15, "ancilla"), 10),
1009-
# 14: Qubit(QuantumRegister(15, "ancilla"), 11),
1010-
# 15: Qubit(QuantumRegister(15, "ancilla"), 12),
1011-
# 16: Qubit(QuantumRegister(2, "qr2"), 0),
1012-
# 17: Qubit(QuantumRegister(2, "qr2"), 1),
1013-
# 18: Qubit(QuantumRegister(15, "ancilla"), 13),
1014-
# 19: Qubit(QuantumRegister(15, "ancilla"), 14),
1015-
# }
999+
10161000
# Trivial layout
10171001
expected_layout_level0 = trivial_layout
10181002
# Dense layout
@@ -1034,7 +1018,9 @@ def test_layout_tokyo_2845(self, level):
10341018

10351019
@data(0, 1, 2, 3)
10361020
def test_layout_tokyo_fully_connected_cx(self, level):
1037-
"""Test that final layout in tokyo in a fully connected circuit"""
1021+
"""Test that final layout in a Tokyo-like device
1022+
is a fully connected circuit
1023+
"""
10381024
qr = QuantumRegister(5, "qr")
10391025
qc = QuantumCircuit(qr)
10401026
for qubit_target in qr:

0 commit comments

Comments
 (0)