diff mbox series

[13/13] selftest: resulttooltests.py: add min-duration default test

Message ID 20260923190419.353493-14-tgamblin@baylibre.com
State New
Headers show
Series resulttool: add 'durations' subcommand and selftests | expand

Commit Message

Trevor Gamblin Sept. 23, 2026, 7:04 p.m. UTC
Add a test for resulttool.durations.build_tables(), ensuring that
short results are hidden by default according to the default
'-m/--min-duration' threshold of 10s.

AI-Generated: Uses Claude Sonnet 5
---
 meta/lib/oeqa/selftest/cases/resulttooltests.py | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
diff mbox series

Patch

diff --git a/meta/lib/oeqa/selftest/cases/resulttooltests.py b/meta/lib/oeqa/selftest/cases/resulttooltests.py
index d93d04aaad..9c3b9bf869 100644
--- a/meta/lib/oeqa/selftest/cases/resulttooltests.py
+++ b/meta/lib/oeqa/selftest/cases/resulttooltests.py
@@ -855,3 +855,18 @@  class ResultToolTests(OESelftestTestCase):
             self.assertEqual([k for k, vals, deltas in rows], ['ptestresult.sections.longsuite'])
         for title, rows in tables[2:]:
             self.assertEqual([k for k, vals, deltas in rows], ['ptestresult.sections.shortsuite'])
+
+    def test_durations_build_tables_hides_short_tests_by_default(self):
+        run1 = self._write_json({'result': self._duration_result('qemux86', 50, 2)})
+        run2 = self._write_json({'result': self._duration_result('qemux86', 80, 3)})
+        try:
+            args = SimpleNamespace(sources=[run1, run2], labels='', sort_by_delta=False,
+                                   threshold=0.0, limit=0, min_duration=10.0, show_short=False)
+            labels, tables = durations.build_tables(args, self.logger)
+        finally:
+            os.remove(run1)
+            os.remove(run2)
+
+        self.assertEqual(len(tables), 1)
+        title, rows = tables[0]
+        self.assertEqual([k for k, vals, deltas in rows], ['ptestresult.sections.longsuite'])