mirror of https://github.com/Qiskit/qiskit.git
Default `init` plugin was not properly raising when called with an invalid optimization level (#12170)
* Raise instead of return. --- Co-authored-by: Evgenii Zheltonozhskii <zheltonozhskiy@gmail.com> * link * reno --------- Co-authored-by: Evgenii Zheltonozhskii <zheltonozhskiy@gmail.com>
This commit is contained in:
parent
b30c94cecd
commit
e0be97c10c
|
@ -158,7 +158,7 @@ class DefaultInitPassManager(PassManagerStagePlugin):
|
||||||
init.append(CommutativeCancellation())
|
init.append(CommutativeCancellation())
|
||||||
|
|
||||||
else:
|
else:
|
||||||
return TranspilerError(f"Invalid optimization level {optimization_level}")
|
raise TranspilerError(f"Invalid optimization level {optimization_level}")
|
||||||
return init
|
return init
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
fixes:
|
||||||
|
- |
|
||||||
|
The default ``init`` plugin was not properly raising a :class:`.TranspilerError` when called with an invalid optimization level.
|
|
@ -86,6 +86,15 @@ class TestStagePassManagerPlugin(QiskitTestCase):
|
||||||
)
|
)
|
||||||
self.assertIsInstance(pm, PassManager)
|
self.assertIsInstance(pm, PassManager)
|
||||||
|
|
||||||
|
def test_init_invalid_optlevel(self):
|
||||||
|
"""Test default init stage with invalid optimization level.
|
||||||
|
See: https://github.com/Qiskit/qiskit/pull/12170"""
|
||||||
|
plugin_manager = PassManagerStagePluginManager()
|
||||||
|
with self.assertRaises(TranspilerError):
|
||||||
|
plugin_manager.get_passmanager_stage(
|
||||||
|
"init", "default", PassManagerConfig(), optimization_level=4
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@ddt.ddt
|
@ddt.ddt
|
||||||
class TestBuiltinPlugins(QiskitTestCase):
|
class TestBuiltinPlugins(QiskitTestCase):
|
||||||
|
|
Loading…
Reference in New Issue