From fd61c1440bd217ada56550e0918e10322148d21e Mon Sep 17 00:00:00 2001 From: Ivan Grokhotkov Date: Wed, 8 Aug 2018 15:55:33 +0300 Subject: [PATCH] tiny-test-fw: invoke expect callbacks in order of appearance Previously the callbacks were invoked in the same order as the list of patterns to be matched. --- tools/tiny-test-fw/DUT.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/tiny-test-fw/DUT.py b/tools/tiny-test-fw/DUT.py index 091a96154..97487525e 100644 --- a/tools/tiny-test-fw/DUT.py +++ b/tools/tiny-test-fw/DUT.py @@ -576,7 +576,10 @@ class BaseDUT(object): data = self.data_cache.get_data(time_remaining) if match_succeed: - # do callback and flush matched data cache + # sort matched items according to order of appearance in the input data, + # so that the callbacks are invoked in correct order + matched_expect_items = sorted(matched_expect_items, key=lambda it: it["index"]) + # invoke callbacks and flush matched data cache slice_index = -1 for expect_item in matched_expect_items: # trigger callback