[MERGED] osmo-gsm-tester[master]: Unuse resources after every test

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Sat Jun 17 17:01:20 UTC 2017


Neels Hofmeyr has submitted this change and it was merged.

Change subject: Unuse resources after every test
......................................................................


Unuse resources after every test

Fix bug in put_all(). That method was unused before this commit.

Clean the process list after the processes are stopped,
otherwise the suite eventually fails with a 'process terminated
prematurely' error. Before it was not necessary because it was not
reused (a new suite run was created).

Change-Id: Iee12866045145544076c6c18786e1a54f18fc293
---
M src/osmo_gsm_tester/resource.py
M src/osmo_gsm_tester/suite.py
2 files changed, 9 insertions(+), 8 deletions(-)

Approvals:
  Neels Hofmeyr: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py
index dbfc4e0..8eec71e 100644
--- a/src/osmo_gsm_tester/resource.py
+++ b/src/osmo_gsm_tester/resource.py
@@ -508,11 +508,11 @@
                     my_item.pop(USED_KEY)
 
     def put_all(self):
+        if not self.reserved:
+            return
         for key, item_list in self.reserved.items():
-            my_list = self.get(key)
-            for my_item in my_list:
-                if my_item.get(USED_KEY):
-                    my_item.pop(USED_KEY)
+            for item in item_list:
+                item.pop(USED_KEY, None)
 
     def free(self):
         if self.reserved:
diff --git a/src/osmo_gsm_tester/suite.py b/src/osmo_gsm_tester/suite.py
index c78c9fc..f4b9260 100644
--- a/src/osmo_gsm_tester/suite.py
+++ b/src/osmo_gsm_tester/suite.py
@@ -256,6 +256,9 @@
                     continue
                 self.current_test = test
                 test.run()
+                self.stop_processes()
+                self.objects_cleanup()
+                self.reserved_resources.put_all()
         except Exception:
             log.log_exn()
         except BaseException as e:
@@ -303,10 +306,8 @@
         self._processes.insert(0, process)
 
     def stop_processes(self):
-        if not self._processes:
-            return
-        for process in self._processes:
-            process.terminate()
+        while self._processes:
+            self._processes.pop().terminate()
 
     def free_resources(self):
         if self.reserved_resources is None:

-- 
To view, visit https://gerrit.osmocom.org/2914
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Iee12866045145544076c6c18786e1a54f18fc293
Gerrit-PatchSet: 4
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Pau Espin Pedrol <pespin at sysmocom.de>



More information about the gerrit-log mailing list