Holger Freyther has submitted this change and it was merged. ( https://gerrit.osmocom.org/9716 )
Change subject: ms: Quit early when all tests concluded.. ...................................................................... ms: Quit early when all tests concluded.. And fix the the detection if everything has completed. Change-Id: I3575ee7618c35e3b66d25fa31844d267489d9179 --- M src/osmo_ms_driver/location_update_test.py 1 file changed, 11 insertions(+), 3 deletions(-) Approvals: Pau Espin Pedrol: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmo_ms_driver/location_update_test.py b/src/osmo_ms_driver/location_update_test.py index 2a3c246..4b1c499 100644 --- a/src/osmo_ms_driver/location_update_test.py +++ b/src/osmo_ms_driver/location_update_test.py @@ -35,6 +35,9 @@ assert self._time_of_lu is None self._time_of_lu = time + def has_lu_time(self): + return self._time_of_lu is not None + def lu_time(self): return self._time_of_lu or 0 @@ -64,6 +67,7 @@ self._results = {} imsi_gen = imsi_ki_gen() + self._outstanding = number_of_ms for i in range(0, number_of_ms): ms_name = "%.5d" % i @@ -155,6 +159,8 @@ elif data['type'] == 'event': if data['data']['lu_done'] == 1: ms = self._results[data['ms']] + if not ms.has_lu_time(): + self._outstanding = self._outstanding - 1 ms.set_lu_time(time) self.log("MS performed LU ", ms=ms, at=time, lu_delay=ms.lu_delay()) else: @@ -165,7 +171,7 @@ def wait_for_result(self, loop): to_complete_time = self._start_time + self.TEST_TIME.total_seconds() - while True: + while not self.all_completed(): now_time = time.clock_gettime(time.CLOCK_MONOTONIC) sleep_time = to_complete_time - now_time if sleep_time < 0: @@ -173,9 +179,11 @@ loop.schedule_timeout(sleep_time) loop.select() + def all_completed(self): + return self._outstanding == 0 + def print_stats(self): - from functools import reduce - all_completed = reduce(lambda b, ms: b and ms.lu_time() is not None, self._results.values(), True) + all_completed = self.all_completed() min_value = min(self._results.values(), key=lambda x: x.lu_delay()) max_value = max(self._results.values(), key=lambda x: x.lu_delay()) -- To view, visit https://gerrit.osmocom.org/9716 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I3575ee7618c35e3b66d25fa31844d267489d9179 Gerrit-Change-Number: 9716 Gerrit-PatchSet: 4 Gerrit-Owner: Holger Freyther <hol...@freyther.de> Gerrit-Reviewer: Harald Welte <lafo...@gnumonks.org> Gerrit-Reviewer: Holger Freyther <hol...@freyther.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol <pes...@sysmocom.de>