summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli
diff options
context:
space:
mode:
Diffstat (limited to 'smoketest/scripts/cli')
-rw-r--r--smoketest/scripts/cli/base_vyostest_shim.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/smoketest/scripts/cli/base_vyostest_shim.py b/smoketest/scripts/cli/base_vyostest_shim.py
index 502be2813..590670a06 100644
--- a/smoketest/scripts/cli/base_vyostest_shim.py
+++ b/smoketest/scripts/cli/base_vyostest_shim.py
@@ -65,16 +65,19 @@ class VyOSUnitTestSHIM:
@classmethod
def tearDownClass(cls):
- # discard any pending changes which might caused a messed up config
- cls._session.discard()
- # ... and restore the initial state
- cls._session.migrate_and_load_config(save_config)
-
try:
+ # commit pending changes done by derived tearDownClass()
+ # implementations like CLI cleanup
cls._session.commit()
except (ConfigError, ConfigSessionError):
+ # discard any pending changes which might have failed, causing a
+ # messed up config
cls._session.discard()
cls.fail(cls)
+ finally:
+ # restore previous configuration before the test
+ cls._session.migrate_and_load_config(save_config)
+ cls._session.commit()
def setUp(self):
pass