On 26. 8. 2024 18:56, Jeremy Spewock wrote:
Just one comment about adding something to a doc-string, otherwise
looks good to me:

Reviewed-by: Jeremy Spewock <jspew...@iol.unh.edu>

On Wed, Aug 21, 2024 at 10:53 AM Juraj Linkeš
<juraj.lin...@pantheon.tech> wrote:
<snip>
diff --git a/dts/framework/test_result.py b/dts/framework/test_result.py
index 306b100bc6..b4b58ef348 100644
--- a/dts/framework/test_result.py
+++ b/dts/framework/test_result.py
@@ -25,10 +25,12 @@

  import os.path
  from collections.abc import MutableSequence
-from dataclasses import dataclass
+from dataclasses import dataclass, field
  from enum import Enum, auto
  from typing import Union

+from framework.testbed_model.capability import Capability
+
  from .config import (
      OS,
      Architecture,
@@ -63,6 +65,12 @@ class is to hold a subset of test cases (which could be all 
test cases) because

      test_suite_class: type[TestSuite]
      test_cases: list[type[TestCase]]
+    required_capabilities: set[Capability] = field(default_factory=set, 
init=False)

This should probably be added to the Attributes section of the
doc-string for the class.

Ah, I missed this, thanks.

When it's there, it might also be useful to
explain that this is used by the runner to determine what capabilities
need to be searched for to mark the suite for being skipped.

And also test cases.

The only
reason I think that would be useful is it helps differentiate this
list of capabilities from the list of required capabilities that every
test suite and test case has.


I want to add this:
The combined required capabilities of both the test suite and the subset of test cases.

I think this makes it clear that it's different from the individual required capabilities of test suites and cases. Let me know what you think.

+
+    def __post_init__(self):
+        """Gather the required capabilities of the test suite and all test 
cases."""
+        for test_object in [self.test_suite_class] + self.test_cases:
+            
self.required_capabilities.update(test_object.required_capabilities)
<snip>


Reply via email to