From 32c78f25cf5bd50c1a88b5ab7a72cbb2872ede2d Mon Sep 17 00:00:00 2001 From: Jake Ororke Date: Tue, 27 Aug 2024 17:06:45 -0700 Subject: [PATCH 1/7] [Fix] Replace automatable PICS in TSTAT test modules - Replaced automatable PICS in TC_TSTAT_4_2 test module with values gathered from attributes and features from the endpoint --- src/python_testing/TC_TSTAT_4_2.py | 40 ++++++++++++++++++------------ 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index 563d6f3f2eddfc..6abd80a4441627 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -58,6 +58,8 @@ class TC_TSTAT_4_2(MatterBaseTest): + async def read_tstat_attribute_expect_success(self, attribute): + return await self.read_single_attribute_check_success(endpoint=None, cluster=cluster, attribute=attribute) def check_atomic_response(self, response: object, expected_status: Status = Status.Success, expected_overall_status: Status = Status.Success, @@ -225,6 +227,11 @@ async def test_TC_TSTAT_4_2(self): params = await self.default_controller.OpenCommissioningWindow( nodeid=self.dut_node_id, timeout=600, iteration=10000, discriminator=1234, option=1) + features = await self.read_single_attribute_check_success(endpoint=None, cluster=cluster, attribute=cluster.Attributes.FeatureMap) + supports_presets = bool(features | cluster.Bitmaps.Feature.kPresets) + attribute_list = await self.read_tstat_attribute_expect_success(attribute=cluster.Attributes.AttributeList) + presets_attr_id = cluster.Attributes.Presets.attribute_id + secondary_authority = self.certificate_authority_manager.NewCertificateAuthority() secondary_fabric_admin = secondary_authority.NewFabricAdmin(vendorId=0xFFF1, fabricId=2) secondary_controller = secondary_fabric_admin.NewController(nodeId=112233) @@ -234,7 +241,7 @@ async def test_TC_TSTAT_4_2(self): filterType=ChipDeviceCtrl.DiscoveryFilterType.LONG_DISCRIMINATOR, filter=1234) self.step("2") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050")): + if supports_presets and presets_attr_id in attribute_list: presets = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.Presets) logger.info(f"Rx'd Presets: {presets}") asserts.assert_equal(presets, initial_presets, "Presets do not match initial value") @@ -243,7 +250,7 @@ async def test_TC_TSTAT_4_2(self): await self.write_presets(endpoint=endpoint, presets=new_presets, expected_status=Status.InvalidInState) self.step("3") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): await self.send_atomic_request_begin_command() # Write to the presets attribute after calling AtomicRequest command @@ -263,8 +270,7 @@ async def test_TC_TSTAT_4_2(self): asserts.assert_equal(presets, initial_presets, "Presets were updated which is not expected") self.step("4") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): - + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -280,7 +286,7 @@ async def test_TC_TSTAT_4_2(self): asserts.assert_equal(presets, new_presets_with_handle, "Presets were not updated which is not expected") self.step("5") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command(timeout=5000, expected_timeout=3000) @@ -294,7 +300,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_commit_command(expected_overall_status=Status.Failure, expected_preset_status=Status.ConstraintError) self.step("6") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.C06.Rsp") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the SetActivePresetRequest command await self.send_set_active_preset_handle_request_command(value=b'\x03') @@ -316,7 +322,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_commit_command(expected_overall_status=Status.Failure, expected_preset_status=Status.InvalidInState) self.step("7") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -331,7 +337,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("8") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -347,7 +353,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("9") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -363,7 +369,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("10") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -379,7 +385,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("11") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -394,7 +400,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("12") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -409,7 +415,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("13") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -428,7 +434,8 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_commit_command(expected_status=Status.InvalidInState) self.step("14") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + await self.send_atomic_request_begin_command() # Send the AtomicRequest begin command from separate controller, which should receive busy status = await self.send_atomic_request_begin_command(dev_ctrl=secondary_controller, expected_overall_status=Status.Failure, expected_preset_status=Status.Busy) @@ -437,7 +444,8 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("15") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + # Send the AtomicRequest begin command from the secondary controller await self.send_atomic_request_begin_command() @@ -447,7 +455,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("16") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): # Send the AtomicRequest begin command from the secondary controller await self.send_atomic_request_begin_command(dev_ctrl=secondary_controller) From 07917cef3bdd9c4da461b5dec0383964d4e8057a Mon Sep 17 00:00:00 2001 From: Jake Ororke Date: Fri, 30 Aug 2024 09:50:22 -0700 Subject: [PATCH 2/7] Updated TC_TSTAT_4_2 test module: - Updated to include changes for checking AtomicRequest command is a supported command on endpoint --- src/python_testing/TC_TSTAT_4_2.py | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index da276ca44bfbf6..73285efb5d785f 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -236,6 +236,8 @@ async def test_TC_TSTAT_4_2(self): secondary_fabric_admin = secondary_authority.NewFabricAdmin(vendorId=0xFFF1, fabricId=2) secondary_controller = secondary_fabric_admin.NewController(nodeId=112233) + accepted_cmd_list = await self.read_tstat_attribute_expect_success(attribute=cluster.Attributes.AcceptedCommandList) + await secondary_controller.CommissionOnNetwork( nodeId=self.dut_node_id, setupPinCode=params.setupPinCode, filterType=ChipDeviceCtrl.DiscoveryFilterType.LONG_DISCRIMINATOR, filter=1234) @@ -250,7 +252,7 @@ async def test_TC_TSTAT_4_2(self): await self.write_presets(endpoint=endpoint, presets=new_presets, expected_status=Status.InvalidInState) self.step("3") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: await self.send_atomic_request_begin_command() # Set the new preset to a null built-in value; will be replaced with false on reading @@ -274,7 +276,7 @@ async def test_TC_TSTAT_4_2(self): asserts.assert_equal(presets, initial_presets, "Presets were updated which is not expected") self.step("4") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -294,7 +296,7 @@ async def test_TC_TSTAT_4_2(self): asserts.assert_equal(presets, new_presets_with_handle, "Presets were not updated which is not expected") self.step("5") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command(timeout=5000, expected_timeout=3000) @@ -308,7 +310,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_commit_command(expected_overall_status=Status.Failure, expected_preset_status=Status.ConstraintError) self.step("6") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the SetActivePresetRequest command await self.send_set_active_preset_handle_request_command(value=b'\x03') @@ -330,7 +332,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_commit_command(expected_overall_status=Status.Failure, expected_preset_status=Status.InvalidInState) self.step("7") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -345,7 +347,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("8") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -361,7 +363,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("9") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -377,7 +379,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("10") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -393,7 +395,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("11") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -408,7 +410,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("12") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -423,7 +425,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("13") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -442,7 +444,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_commit_command(expected_status=Status.InvalidInState) self.step("14") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: await self.send_atomic_request_begin_command() # Send the AtomicRequest begin command from separate controller, which should receive busy @@ -452,7 +454,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("15") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command from the secondary controller await self.send_atomic_request_begin_command() @@ -463,7 +465,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("16") - if supports_presets and presets_attr_id in attribute_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: # Send the AtomicRequest begin command from the secondary controller await self.send_atomic_request_begin_command(dev_ctrl=secondary_controller) From 322a75df19869f1de5e09a6153450bb051e62b06 Mon Sep 17 00:00:00 2001 From: Jake Ororke Date: Wed, 4 Dec 2024 10:14:07 -0800 Subject: [PATCH 3/7] Updating TC_TSTAT_4_2: - Updated Test step 6 to match with original test step PICS args to pass CI checks --- src/python_testing/TC_TSTAT_4_2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index 31989bc8706d1f..48cad4243c313a 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -452,7 +452,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 5 since there were no built-in presets") self.step("6") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): notBuiltInPresets = list(preset for preset in current_presets if preset.builtIn is False) if len(notBuiltInPresets) > 0: From 0c17f4a6d2322bc6e451d51a1e17e4859d62ec37 Mon Sep 17 00:00:00 2001 From: Jake Ororke Date: Wed, 18 Dec 2024 18:36:18 -0800 Subject: [PATCH 4/7] Updating TC_TSTAT_4_2 python test module: - Updating to include attribute_guard(), feature_guard(), and command_guard() in their respective places in the test module. --- src/python_testing/TC_TSTAT_4_2.py | 83 +++++++++++++++--------------- 1 file changed, 42 insertions(+), 41 deletions(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index 48cad4243c313a..c8f9529930e6f9 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -31,7 +31,7 @@ # --trace-to json:${TRACE_TEST_JSON}.json # --trace-to perfetto:${TRACE_TEST_PERFETTO}.perfetto # factory-reset: true -# quiet: true +# quiet: false # === END CI TEST ARGUMENTS === import copy @@ -112,11 +112,11 @@ def get_available_scenario(self, presetTypes: list, presetScenarioCounts: map): return availableScenarios[0] return None - def make_preset(self, presetScenario, coolSetpoint, heatSetpoint, presetHandle=NullValue, name=None, builtIn=False): + def make_preset(self, presetScenario, coolSetpoint, heatSetpoint, presetHandle=NullValue, name=None, builtIn=False, supportsCool=True, supportsHeat=True): preset = cluster.Structs.PresetStruct(presetHandle=presetHandle, presetScenario=presetScenario, builtIn=builtIn) - if self.check_pics("TSTAT.S.F00"): + if supportsHeat: preset.heatingSetpoint = heatSetpoint - if self.check_pics("TSTAT.S.F01"): + if supportsCool: preset.coolingSetpoint = coolSetpoint if name is not None: preset.name = name @@ -255,6 +255,8 @@ def steps_TC_TSTAT_4_2(self) -> list[TestStep]: @ async_test_body async def test_TC_TSTAT_4_2(self): + #super().setup_class() + endpoint = self.get_endpoint() self.step("1") @@ -264,10 +266,6 @@ async def test_TC_TSTAT_4_2(self): params = await self.default_controller.OpenCommissioningWindow( nodeid=self.dut_node_id, timeout=600, iteration=10000, discriminator=1234, option=1) - features = await self.read_single_attribute_check_success(endpoint=None, cluster=cluster, attribute=cluster.Attributes.FeatureMap) - supports_presets = bool(features | cluster.Bitmaps.Feature.kPresets) - attribute_list = await self.read_tstat_attribute_expect_success(attribute=cluster.Attributes.AttributeList) - presets_attr_id = cluster.Attributes.Presets.attribute_id secondary_authority = self.certificate_authority_manager.NewCertificateAuthority() secondary_fabric_admin = secondary_authority.NewFabricAdmin(vendorId=0xFFF1, fabricId=2) @@ -290,15 +288,18 @@ async def test_TC_TSTAT_4_2(self): minCoolSetpointLimit = 1600 maxCoolSetpointLimit = 3200 - supportsHeat = self.check_pics("TSTAT.S.F00") - supportsCool = self.check_pics("TSTAT.S.F01") + Presets_attr_support = await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.Presets) + AtomicRequest_cmd_support = await self.command_guard(endpoint=endpoint, command=cluster.Commands.AtomicRequest) + supportsHeat = await self.feature_guard(endpoint=endpoint, cluster=cluster, feature_int=cluster.Bitmaps.Feature.kHeating) + supportsCool = await self.feature_guard(endpoint=endpoint, cluster=cluster, feature_int=cluster.Bitmaps.Feature.kCooling) + supportsPresets_feat = await self.feature_guard(endpoint=endpoint, cluster=cluster, feature_int=cluster.Bitmaps.Feature.kPresets) if supportsHeat: # If the server supports MinHeatSetpointLimit & MaxHeatSetpointLimit, use those - if self.check_pics("TSTAT.S.A0015") and self.check_pics("TSTAT.S.A0016"): + if await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.MinHeatSetpointLimit) and await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.MaxHeatSetpointLimit): minHeatSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.MinHeatSetpointLimit) maxHeatSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.MaxHeatSetpointLimit) - elif self.check_pics("TSTAT.S.A0003") and self.check_pics("TSTAT.S.A0004"): + elif await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.AbsMinHeatSetpointLimit) and await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.AbsMaxHeatSetpointLimit): # Otherwise, if the server supports AbsMinHeatSetpointLimit & AbsMaxHeatSetpointLimit, use those minHeatSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.AbsMinHeatSetpointLimit) maxHeatSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.AbsMaxHeatSetpointLimit) @@ -307,10 +308,10 @@ async def test_TC_TSTAT_4_2(self): if supportsCool: # If the server supports MinCoolSetpointLimit & MaxCoolSetpointLimit, use those - if self.check_pics("TSTAT.S.A0017") and self.check_pics("TSTAT.S.A0018"): + if await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.MinCoolSetpointLimit) and await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.MaxCoolSetpointLimit): minCoolSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.MinCoolSetpointLimit) maxCoolSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.MaxCoolSetpointLimit) - elif self.check_pics("TSTAT.S.A0005") and self.check_pics("TSTAT.S.A0006"): + elif await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.AbsMinCoolSetpointLimit) and await self.attribute_guard(endpoint=endpoint, attribute=cluster.Attributes.AbsMaxCoolSetpointLimit): # Otherwise, if the server supports AbsMinCoolSetpointLimit & AbsMaxCoolSetpointLimit, use those minCoolSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.AbsMinCoolSetpointLimit) maxCoolSetpointLimit = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.AbsMaxCoolSetpointLimit) @@ -320,7 +321,7 @@ async def test_TC_TSTAT_4_2(self): # Servers that do not support occupancy are always "occupied" occupied = True - supportsOccupancy = self.check_pics("TSTAT.S.F02") + supportsOccupancy = await self.feature_guard(endpoint=endpoint, cluster=cluster, feature_int=cluster.Bitmaps.Feature.kOccupancy) if supportsOccupancy: occupied = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.Occupancy) & 1 @@ -341,7 +342,7 @@ async def test_TC_TSTAT_4_2(self): await self.write_single_attribute(attribute_value=cluster.Attributes.UnoccupiedCoolingSetpoint(coolSetpoint-1), endpoint_id=endpoint) self.step("2") - if supports_presets and presets_attr_id in attribute_list: + if supportsPresets_feat and Presets_attr_support: # Read the numberOfPresets supported. numberOfPresetsSupported = await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=cluster.Attributes.NumberOfPresets) @@ -359,7 +360,7 @@ async def test_TC_TSTAT_4_2(self): await self.write_presets(endpoint=endpoint, presets=current_presets, expected_status=Status.InvalidInState) self.step("3") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: availableScenario = self.get_available_scenario(presetTypes=presetTypes, presetScenarioCounts=presetScenarioCounts) @@ -370,7 +371,7 @@ async def test_TC_TSTAT_4_2(self): for preset in test_presets: preset.builtIn = NullValue - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) await self.send_atomic_request_begin_command() @@ -394,7 +395,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 3 since there was no available preset scenario to append") self.step("4") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: availableScenario = self.get_available_scenario(presetTypes=presetTypes, presetScenarioCounts=presetScenarioCounts) @@ -407,7 +408,7 @@ async def test_TC_TSTAT_4_2(self): if len(builtInPresets) > 0: builtInPresets[0].builtIn = NullValue - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -429,7 +430,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 4 since there were no built-in presets") self.step("5") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: # Write to the presets attribute after removing a built in preset from the list. Remove the first entry. test_presets = current_presets.copy() @@ -452,7 +453,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 5 since there were no built-in presets") self.step("6") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support and self.pics_guard(self.check_pics("TSTAT.S.Cfe.Rsp")): notBuiltInPresets = list(preset for preset in current_presets if preset.builtIn is False) if len(notBuiltInPresets) > 0: @@ -498,7 +499,7 @@ async def test_TC_TSTAT_4_2(self): asserts.assert_equal(activePresetHandle, NullValue, "Active preset handle was not cleared as expected") self.step("7") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: # Write to the presets attribute after setting the builtIn flag to False for a built-in preset. test_presets = copy.deepcopy(current_presets) @@ -520,7 +521,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 7 since there was no built-in presets") self.step("8") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: availableScenario = self.get_available_scenario(presetTypes=presetTypes, presetScenarioCounts=presetScenarioCounts) @@ -532,7 +533,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_begin_command() # Write to the presets attribute after adding a preset with builtIn set to True - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, builtIn=True)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat)) status = await self.write_presets(endpoint=endpoint, presets=test_presets, expected_status=Status.ConstraintError) @@ -543,7 +544,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 8 since there was no available preset scenario to append") self.step("9") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -551,7 +552,7 @@ async def test_TC_TSTAT_4_2(self): # Write to the presets attribute after adding a preset with a preset handle that doesn't exist in Presets attribute test_presets = copy.deepcopy(current_presets) test_presets.append(self.make_preset(cluster.Enums.PresetScenarioEnum.kWake, coolSetpoint, - heatSetpoint, presetHandle=random.randbytes(16), name="Wake", builtIn=True)) + heatSetpoint, presetHandle=random.randbytes(16), name="Wake", builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat)) status = await self.write_presets(endpoint=endpoint, presets=test_presets, expected_status=Status.NotFound) @@ -559,7 +560,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("10") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: availableScenario = self.get_available_scenario(presetTypes=presetTypes, presetScenarioCounts=presetScenarioCounts) @@ -573,7 +574,7 @@ async def test_TC_TSTAT_4_2(self): # Write to the presets attribute after adding a duplicate preset test_presets.append(self.make_preset(availableScenario, coolSetpoint, - heatSetpoint, presetHandle=duplicatePreset.presetHandle)) + heatSetpoint, presetHandle=duplicatePreset.presetHandle, supportsCool=supportsCool, supportsHeat=supportsHeat)) await self.write_presets(endpoint=endpoint, presets=test_presets, expected_status=Status.ConstraintError) @@ -584,7 +585,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 10 since there was no available preset scenario to duplicate") self.step("11") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: test_presets = copy.deepcopy(current_presets) @@ -606,7 +607,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 11 since there were no presets that were not built-in") self.step("12") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: availableScenarios = list(presetType.presetScenario for presetType in presetTypes if (presetType.presetTypeFeatures & cluster.Bitmaps.PresetTypeFeaturesBitmap.kSupportsNames) == 0 and presetScenarioCounts.get( presetType.presetScenario, 0) <= presetType.numberOfPresets) @@ -615,7 +616,7 @@ async def test_TC_TSTAT_4_2(self): presets_without_name_support = list(preset for preset in test_presets if preset.presetScenario in availableScenarios) if len(presets_without_name_support) == 0 and len(availableScenarios) > 0: - new_preset = self.make_preset(availableScenarios[0], coolSetpoint, heatSetpoint, builtIn=True) + new_preset = self.make_preset(availableScenarios[0], coolSetpoint, heatSetpoint, builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat) test_presets.append(new_preset) presets_without_name_support = [new_preset] @@ -636,7 +637,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 12 since there was no available preset scenario without name support") self.step("13") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: availableScenario = self.get_available_scenario(presetTypes=presetTypes, presetScenarioCounts=presetScenarioCounts) @@ -644,7 +645,7 @@ async def test_TC_TSTAT_4_2(self): # Write to the presets attribute with a new valid preset added test_presets = copy.deepcopy(current_presets) - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -661,7 +662,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 13 since there was no available preset scenario to add") self.step("14") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: await self.send_atomic_request_begin_command() # Send the AtomicRequest begin command from separate controller, which should receive busy @@ -671,7 +672,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("15") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: # Send the AtomicRequest begin command from the secondary controller await self.send_atomic_request_begin_command() @@ -682,7 +683,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("16") - if supports_presets and presets_attr_id in attribute_list and cluster.Commands.AtomicRequest.command_id in accepted_cmd_list: + if supportsPresets_feat and Presets_attr_support and AtomicRequest_cmd_support: # Send the AtomicRequest begin command from the secondary controller await self.send_atomic_request_begin_command(dev_ctrl=secondary_controller) @@ -697,7 +698,7 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_rollback_command() self.step("17") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supportsPresets_feat and Presets_attr_support and self.check_pics("TSTAT.S.Cfe.Rsp"): # Find a preset scenario not present in PresetTypes to run this test. supportedScenarios = set(presetType.presetScenario for presetType in presetTypes) @@ -705,7 +706,7 @@ async def test_TC_TSTAT_4_2(self): presetScenario for presetScenario in cluster.Enums.PresetScenarioEnum if presetScenario not in supportedScenarios) if len(unavailableScenarios) > 0: test_presets = current_presets.copy() - test_presets.append(self.make_preset(unavailableScenarios[0], coolSetpoint, heatSetpoint, name="Preset")) + test_presets.append(self.make_preset(unavailableScenarios[0], coolSetpoint, heatSetpoint, name="Preset", supportsCool=supportsCool, supportsHeat=supportsHeat)) # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -719,7 +720,7 @@ async def test_TC_TSTAT_4_2(self): "Couldn't run test step 17 since all preset scenarios in PresetScenarioEnum are supported by this Thermostat") self.step("18") - if self.pics_guard(self.check_pics("TSTAT.S.F08") and self.check_pics("TSTAT.S.A0050") and self.check_pics("TSTAT.S.Cfe.Rsp")): + if supportsPresets_feat and Presets_attr_support and self.check_pics("TSTAT.S.Cfe.Rsp"): ScenarioHeadroom = namedtuple("ScenarioHeadroom", "presetScenario remaining") # Generate list of tuples of scenarios and number of remaining presets per scenario allowed @@ -760,7 +761,7 @@ async def test_TC_TSTAT_4_2(self): presetsAddedForScenario = presetsAddedForScenario + 1 while presetsAddedForScenario < presetType.numberOfPresets: - testPresets.append(self.make_preset(scenario, coolSetpoint, heatSetpoint)) + testPresets.append(self.make_preset(scenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) presetsAddedForScenario = presetsAddedForScenario + 1 # Send the AtomicRequest begin command From 5350f85281554a7f35f0ad79fe71e9218e51a5af Mon Sep 17 00:00:00 2001 From: "Restyled.io" Date: Thu, 19 Dec 2024 02:38:46 +0000 Subject: [PATCH 5/7] Restyled by autopep8 --- src/python_testing/TC_TSTAT_4_2.py | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index c8f9529930e6f9..a9cba4cf736ffa 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -255,7 +255,7 @@ def steps_TC_TSTAT_4_2(self) -> list[TestStep]: @ async_test_body async def test_TC_TSTAT_4_2(self): - #super().setup_class() + # super().setup_class() endpoint = self.get_endpoint() @@ -266,7 +266,6 @@ async def test_TC_TSTAT_4_2(self): params = await self.default_controller.OpenCommissioningWindow( nodeid=self.dut_node_id, timeout=600, iteration=10000, discriminator=1234, option=1) - secondary_authority = self.certificate_authority_manager.NewCertificateAuthority() secondary_fabric_admin = secondary_authority.NewFabricAdmin(vendorId=0xFFF1, fabricId=2) secondary_controller = secondary_fabric_admin.NewController(nodeId=112233) @@ -371,7 +370,8 @@ async def test_TC_TSTAT_4_2(self): for preset in test_presets: preset.builtIn = NullValue - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, + supportsCool=supportsCool, supportsHeat=supportsHeat)) await self.send_atomic_request_begin_command() @@ -408,7 +408,8 @@ async def test_TC_TSTAT_4_2(self): if len(builtInPresets) > 0: builtInPresets[0].builtIn = NullValue - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, + supportsCool=supportsCool, supportsHeat=supportsHeat)) # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -533,7 +534,8 @@ async def test_TC_TSTAT_4_2(self): await self.send_atomic_request_begin_command() # Write to the presets attribute after adding a preset with builtIn set to True - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, + builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat)) status = await self.write_presets(endpoint=endpoint, presets=test_presets, expected_status=Status.ConstraintError) @@ -616,7 +618,8 @@ async def test_TC_TSTAT_4_2(self): presets_without_name_support = list(preset for preset in test_presets if preset.presetScenario in availableScenarios) if len(presets_without_name_support) == 0 and len(availableScenarios) > 0: - new_preset = self.make_preset(availableScenarios[0], coolSetpoint, heatSetpoint, builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat) + new_preset = self.make_preset(availableScenarios[0], coolSetpoint, heatSetpoint, + builtIn=True, supportsCool=supportsCool, supportsHeat=supportsHeat) test_presets.append(new_preset) presets_without_name_support = [new_preset] @@ -645,7 +648,8 @@ async def test_TC_TSTAT_4_2(self): # Write to the presets attribute with a new valid preset added test_presets = copy.deepcopy(current_presets) - test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) + test_presets.append(self.make_preset(availableScenario, coolSetpoint, heatSetpoint, + supportsCool=supportsCool, supportsHeat=supportsHeat)) # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -706,7 +710,8 @@ async def test_TC_TSTAT_4_2(self): presetScenario for presetScenario in cluster.Enums.PresetScenarioEnum if presetScenario not in supportedScenarios) if len(unavailableScenarios) > 0: test_presets = current_presets.copy() - test_presets.append(self.make_preset(unavailableScenarios[0], coolSetpoint, heatSetpoint, name="Preset", supportsCool=supportsCool, supportsHeat=supportsHeat)) + test_presets.append(self.make_preset( + unavailableScenarios[0], coolSetpoint, heatSetpoint, name="Preset", supportsCool=supportsCool, supportsHeat=supportsHeat)) # Send the AtomicRequest begin command await self.send_atomic_request_begin_command() @@ -761,7 +766,8 @@ async def test_TC_TSTAT_4_2(self): presetsAddedForScenario = presetsAddedForScenario + 1 while presetsAddedForScenario < presetType.numberOfPresets: - testPresets.append(self.make_preset(scenario, coolSetpoint, heatSetpoint, supportsCool=supportsCool, supportsHeat=supportsHeat)) + testPresets.append(self.make_preset(scenario, coolSetpoint, heatSetpoint, + supportsCool=supportsCool, supportsHeat=supportsHeat)) presetsAddedForScenario = presetsAddedForScenario + 1 # Send the AtomicRequest begin command From ffaf1f92a3643f501b7fb3c31d5252af4953f3bd Mon Sep 17 00:00:00 2001 From: Jake Ororke Date: Wed, 18 Dec 2024 19:19:57 -0800 Subject: [PATCH 6/7] Updating TC_TSTAT_4_2 test module: - Resolving linting errors --- src/python_testing/TC_TSTAT_4_2.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index a9cba4cf736ffa..7ab0d43e5e19ab 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -255,8 +255,6 @@ def steps_TC_TSTAT_4_2(self) -> list[TestStep]: @ async_test_body async def test_TC_TSTAT_4_2(self): - # super().setup_class() - endpoint = self.get_endpoint() self.step("1") @@ -270,8 +268,6 @@ async def test_TC_TSTAT_4_2(self): secondary_fabric_admin = secondary_authority.NewFabricAdmin(vendorId=0xFFF1, fabricId=2) secondary_controller = secondary_fabric_admin.NewController(nodeId=112233) - accepted_cmd_list = await self.read_tstat_attribute_expect_success(attribute=cluster.Attributes.AcceptedCommandList) - await secondary_controller.CommissionOnNetwork( nodeId=self.dut_node_id, setupPinCode=params.setupPinCode, filterType=ChipDeviceCtrl.DiscoveryFilterType.LONG_DISCRIMINATOR, filter=1234) From 08639843a2c703b5b526212c733eb337d4a5bf9a Mon Sep 17 00:00:00 2001 From: Jake Ororke Date: Wed, 18 Dec 2024 19:21:23 -0800 Subject: [PATCH 7/7] Updating TC_TSTAT_4_2 test module: - Quiet mode CI enabled --- src/python_testing/TC_TSTAT_4_2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/python_testing/TC_TSTAT_4_2.py b/src/python_testing/TC_TSTAT_4_2.py index 7ab0d43e5e19ab..09547157a1415c 100644 --- a/src/python_testing/TC_TSTAT_4_2.py +++ b/src/python_testing/TC_TSTAT_4_2.py @@ -31,7 +31,7 @@ # --trace-to json:${TRACE_TEST_JSON}.json # --trace-to perfetto:${TRACE_TEST_PERFETTO}.perfetto # factory-reset: true -# quiet: false +# quiet: true # === END CI TEST ARGUMENTS === import copy