diff --git a/src/python_testing/TC_DRLK_2_12.py b/src/python_testing/TC_DRLK_2_12.py index a0b4f7909158ff..a6dec950fdcb32 100644 --- a/src/python_testing/TC_DRLK_2_12.py +++ b/src/python_testing/TC_DRLK_2_12.py @@ -38,6 +38,9 @@ async def teardown_test(self): await self.teardown() return super().teardown_test() + def pics_TC_DRLK_2_12(self) -> list[str]: + return ["DRLK.S.F0c"] + @async_test_body async def test_TC_DRLK_2_12(self): await self.run_drlk_test_2_12() diff --git a/src/python_testing/TC_DRLK_2_2.py b/src/python_testing/TC_DRLK_2_2.py index 787e8c37b93dc2..3ce14da9615617 100644 --- a/src/python_testing/TC_DRLK_2_2.py +++ b/src/python_testing/TC_DRLK_2_2.py @@ -38,6 +38,9 @@ async def teardown_test(self): await self.teardown() return super().teardown_test() + def pics_TC_DRLK_2_2(self) -> list[str]: + return ["DRLK.S"] + @async_test_body async def test_TC_DRLK_2_2(self): await self.run_drlk_test_2_2() diff --git a/src/python_testing/TC_DRLK_2_3.py b/src/python_testing/TC_DRLK_2_3.py index b114171ddd0457..7d9995dfad2e96 100644 --- a/src/python_testing/TC_DRLK_2_3.py +++ b/src/python_testing/TC_DRLK_2_3.py @@ -38,6 +38,9 @@ async def teardown_test(self): await self.teardown() return super().teardown_test() + def pics_TC_DRLK_2_3(self) -> list[str]: + return ["DRLK.S"] + @async_test_body async def test_TC_DRLK_2_3(self): await self.run_drlk_test_2_3() diff --git a/src/python_testing/TC_EEVSE_2_2.py b/src/python_testing/TC_EEVSE_2_2.py index 8ebc78a22e94cd..1651f4daa4040b 100644 --- a/src/python_testing/TC_EEVSE_2_2.py +++ b/src/python_testing/TC_EEVSE_2_2.py @@ -37,7 +37,7 @@ def desc_TC_EEVSE_2_2(self) -> str: def pics_TC_EEVSE_2_2(self): """ This function returns a list of PICS for this test case that must be True for the test to be run""" # In this case - there is no feature flags needed to run this test case - return None + return ["EEVSE.S"] def steps_TC_EEVSE_2_2(self) -> list[TestStep]: steps = [ diff --git a/src/python_testing/TC_EEVSE_2_4.py b/src/python_testing/TC_EEVSE_2_4.py index 9379e23332e813..63adbe5a8563ab 100644 --- a/src/python_testing/TC_EEVSE_2_4.py +++ b/src/python_testing/TC_EEVSE_2_4.py @@ -35,7 +35,7 @@ def desc_TC_EEVSE_2_4(self) -> str: def pics_TC_EEVSE_2_4(self): """ This function returns a list of PICS for this test case that must be True for the test to be run""" # In this case - there is no feature flags needed to run this test case - return None + return ["EEVSE.S"] def steps_TC_EEVSE_2_4(self) -> list[TestStep]: steps = [ diff --git a/src/python_testing/TC_EEVSE_2_5.py b/src/python_testing/TC_EEVSE_2_5.py index 34ca0151935f93..4a32b5a6d7ad6d 100644 --- a/src/python_testing/TC_EEVSE_2_5.py +++ b/src/python_testing/TC_EEVSE_2_5.py @@ -35,7 +35,7 @@ def desc_TC_EEVSE_2_5(self) -> str: def pics_TC_EEVSE_2_5(self): """ This function returns a list of PICS for this test case that must be True for the test to be run""" # In this case - there is no feature flags needed to run this test case - return None + return ["EEVSE.S"] def steps_TC_EEVSE_2_5(self) -> list[TestStep]: steps = [ diff --git a/src/python_testing/TC_FAN_3_3.py b/src/python_testing/TC_FAN_3_3.py index 79ac3e1077817f..c1f0993466c434 100644 --- a/src/python_testing/TC_FAN_3_3.py +++ b/src/python_testing/TC_FAN_3_3.py @@ -42,6 +42,9 @@ async def write_rock_setting(self, endpoint, rock_setting): result = await self.default_controller.WriteAttribute(self.dut_node_id, [(endpoint, Clusters.FanControl.Attributes.RockSetting(rock_setting))]) asserts.assert_equal(result[0].Status, Status.Success, "RockSetting write failed") + def pics_TC_FAN_3_3(self) -> list[str]: + return ["FAN.S"] + @async_test_body async def test_TC_FAN_3_3(self): if not self.check_pics("FAN.S.F02"): diff --git a/src/python_testing/TC_FAN_3_4.py b/src/python_testing/TC_FAN_3_4.py index af18ba5082a14a..9eb20f1ca035e9 100644 --- a/src/python_testing/TC_FAN_3_4.py +++ b/src/python_testing/TC_FAN_3_4.py @@ -42,6 +42,9 @@ async def write_wind_setting(self, endpoint, wind_setting): result = await self.default_controller.WriteAttribute(self.dut_node_id, [(endpoint, Clusters.FanControl.Attributes.WindSetting(wind_setting))]) asserts.assert_equal(result[0].Status, Status.Success, "WindSetting write failed") + def pics_TC_FAN_3_4(self) -> list[str]: + return ["FAN.S"] + @async_test_body async def test_TC_FAN_3_4(self): if not self.check_pics("FAN.S.F03"): diff --git a/src/python_testing/TC_FAN_3_5.py b/src/python_testing/TC_FAN_3_5.py index f02f6fd3adf6ab..9fe598b446290c 100644 --- a/src/python_testing/TC_FAN_3_5.py +++ b/src/python_testing/TC_FAN_3_5.py @@ -58,6 +58,9 @@ async def send_step_command(self, endpoint, asserts.assert_equal(e.status, expected_status, "Unexpected error returned") pass + def pics_TC_FAN_3_5(self) -> list[str]: + return ["FAN.S"] + @async_test_body async def test_TC_FAN_3_5(self): if not self.check_pics("FAN.S.F04"): diff --git a/src/python_testing/TC_ICDM_2_1.py b/src/python_testing/TC_ICDM_2_1.py index 20770c400ddd3f..21a3082ef282a9 100644 --- a/src/python_testing/TC_ICDM_2_1.py +++ b/src/python_testing/TC_ICDM_2_1.py @@ -29,6 +29,9 @@ async def read_icdm_attribute_expect_success(self, endpoint, attribute): cluster = Clusters.Objects.IcdManagement return await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=attribute) + def pics_TC_ICDM_2_1(self) -> list[str]: + return ["ICDM.S"] + @async_test_body async def test_TC_ICDM_2_1(self): diff --git a/src/python_testing/TC_OPSTATE_2_1.py b/src/python_testing/TC_OPSTATE_2_1.py index f532a1cdfecb08..98dbe83dc09057 100644 --- a/src/python_testing/TC_OPSTATE_2_1.py +++ b/src/python_testing/TC_OPSTATE_2_1.py @@ -49,6 +49,9 @@ async def read_and_validate_operror(self, step, expected_error): asserts.assert_equal(operational_error.errorStateID, expected_error, "errorStateID(%s) should equal %s" % (operational_error.errorStateID, expected_error)) + def pics_TC_OPSTATE_2_1(self) -> list[str]: + return ["OPSTATE.S"] + @async_test_body async def test_TC_OPSTATE_2_1(self): diff --git a/src/python_testing/TC_OPSTATE_2_3.py b/src/python_testing/TC_OPSTATE_2_3.py index 2f8a9687703dbb..e7906c0ed225f0 100644 --- a/src/python_testing/TC_OPSTATE_2_3.py +++ b/src/python_testing/TC_OPSTATE_2_3.py @@ -46,6 +46,9 @@ async def send_resume_cmd(self) -> Clusters.Objects.OperationalState.Commands.Re "Unexpected return type for Resume") return ret + def pics_TC_OPSTATE_2_3(self) -> list[str]: + return ["OPSTATE.S"] + @async_test_body async def test_TC_OPSTATE_2_3(self): diff --git a/src/python_testing/TC_RVCCLEANM_1_2.py b/src/python_testing/TC_RVCCLEANM_1_2.py index cbda91e1945f90..a3a764830e96be 100644 --- a/src/python_testing/TC_RVCCLEANM_1_2.py +++ b/src/python_testing/TC_RVCCLEANM_1_2.py @@ -33,6 +33,9 @@ async def read_mod_attribute_expect_success(self, endpoint, attribute): cluster = Clusters.Objects.RvcCleanMode return await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=attribute) + def pics_TC_RVCCLEANM_1_2(self) -> list[str]: + return ["RVCCLEANM.S"] + @async_test_body async def test_TC_RVCCLEANM_1_2(self): diff --git a/src/python_testing/TC_RVCCLEANM_2_1.py b/src/python_testing/TC_RVCCLEANM_2_1.py index 3cc58041b6ea37..56743b6192551e 100644 --- a/src/python_testing/TC_RVCCLEANM_2_1.py +++ b/src/python_testing/TC_RVCCLEANM_2_1.py @@ -38,6 +38,9 @@ async def send_change_to_mode_cmd(self, newMode) -> Clusters.Objects.RvcCleanMod "Unexpected return type for ChangeToMode") return ret + def pics_TC_RVCCLEANM_2_1(self) -> list[str]: + return ["RVCCLEANM.S"] + @async_test_body async def test_TC_RVCCLEANM_2_1(self): diff --git a/src/python_testing/TC_RVCCLEANM_3_2.py b/src/python_testing/TC_RVCCLEANM_3_2.py index 0ac29273c20b7d..d65a3b26fc6f84 100644 --- a/src/python_testing/TC_RVCCLEANM_3_2.py +++ b/src/python_testing/TC_RVCCLEANM_3_2.py @@ -69,6 +69,9 @@ async def check_preconditions(self, endpoint): return False + def pics_TC_RVCCLEANM_3_2(self) -> list[str]: + return ["RVCCLEANM.S.A0002"] + @async_test_body async def test_TC_RVCCLEANM_3_2(self): diff --git a/src/python_testing/TC_RVCOPSTATE_2_1.py b/src/python_testing/TC_RVCOPSTATE_2_1.py index 58c012c459ec86..8ca7a00ab2c134 100644 --- a/src/python_testing/TC_RVCOPSTATE_2_1.py +++ b/src/python_testing/TC_RVCOPSTATE_2_1.py @@ -49,6 +49,9 @@ async def read_and_validate_operror(self, step, expected_error): asserts.assert_equal(operational_error.errorStateID, expected_error, "errorStateID(%s) should equal %s" % (operational_error.errorStateID, expected_error)) + def TC_RVCOPSTATE_2_1(self) -> list[str]: + return ["RVCOPSTATE.S"] + @async_test_body async def test_TC_RVCOPSTATE_2_1(self): diff --git a/src/python_testing/TC_RVCOPSTATE_2_3.py b/src/python_testing/TC_RVCOPSTATE_2_3.py index c1cd3b073f7454..a0a6af47726d74 100644 --- a/src/python_testing/TC_RVCOPSTATE_2_3.py +++ b/src/python_testing/TC_RVCOPSTATE_2_3.py @@ -46,6 +46,9 @@ async def send_resume_cmd(self) -> Clusters.Objects.RvcOperationalState.Commands "Unexpected return type for Resume") return ret + def TC_RVCOPSTATE_2_3(self) -> list[str]: + return ["RVCOPSTATE.S"] + @async_test_body async def test_TC_RVCOPSTATE_2_3(self): diff --git a/src/python_testing/TC_RVCRUNM_1_2.py b/src/python_testing/TC_RVCRUNM_1_2.py index 8ee3e93bb42cb9..68684e45dd5c61 100644 --- a/src/python_testing/TC_RVCRUNM_1_2.py +++ b/src/python_testing/TC_RVCRUNM_1_2.py @@ -33,6 +33,9 @@ async def read_mod_attribute_expect_success(self, endpoint, attribute): cluster = Clusters.Objects.RvcRunMode return await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=attribute) + def pics_TC_RVCRUNM_1_2(self) -> list[str]: + return ["RVCRUNM.S"] + @async_test_body async def test_TC_RVCRUNM_1_2(self): diff --git a/src/python_testing/TC_RVCRUNM_2_1.py b/src/python_testing/TC_RVCRUNM_2_1.py index 332f4e6ae7a4f4..20229d1b7dd00d 100644 --- a/src/python_testing/TC_RVCRUNM_2_1.py +++ b/src/python_testing/TC_RVCRUNM_2_1.py @@ -38,6 +38,9 @@ async def send_change_to_mode_cmd(self, newMode) -> Clusters.Objects.RvcRunMode. "Unexpected return type for ChangeToMode") return ret + def pics_TC_RVCRUNM_2_1(self) -> list[str]: + return ["RVCRUNM.S"] + @async_test_body async def test_TC_RVCRUNM_2_1(self): diff --git a/src/python_testing/TC_RVCRUNM_3_2.py b/src/python_testing/TC_RVCRUNM_3_2.py index 09d99f4864b15f..0b33c706325e81 100644 --- a/src/python_testing/TC_RVCRUNM_3_2.py +++ b/src/python_testing/TC_RVCRUNM_3_2.py @@ -69,6 +69,9 @@ async def check_preconditions(self, endpoint): return False + def pics_TC_RVCRUNM_3_2(self) -> list[str]: + return ["RVCRUNM.S"] + @async_test_body async def test_TC_RVCRUNM_3_2(self): diff --git a/src/python_testing/TC_TIMESYNC_2_1.py b/src/python_testing/TC_TIMESYNC_2_1.py index 9973c0c675cd79..12e588b0424e11 100644 --- a/src/python_testing/TC_TIMESYNC_2_1.py +++ b/src/python_testing/TC_TIMESYNC_2_1.py @@ -29,6 +29,9 @@ async def read_ts_attribute_expect_success(self, endpoint, attribute): cluster = Clusters.Objects.TimeSynchronization return await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=attribute) + def pics_TC_TIMESYNC_2_1(self) -> list[str]: + return ["TIMESYNC.S"] + @async_test_body async def test_TC_TIMESYNC_2_1(self): diff --git a/src/python_testing/TC_TIMESYNC_2_10.py b/src/python_testing/TC_TIMESYNC_2_10.py index 4b66b707c01113..b59e88dcfcb317 100644 --- a/src/python_testing/TC_TIMESYNC_2_10.py +++ b/src/python_testing/TC_TIMESYNC_2_10.py @@ -45,6 +45,9 @@ async def send_set_dst_cmd(self, dst: typing.List[Clusters.Objects.TimeSynchroni async def send_set_utc_cmd(self, utc: uint) -> None: await self.send_single_cmd(cmd=Clusters.Objects.TimeSynchronization.Commands.SetUTCTime(UTCTime=utc, granularity=Clusters.Objects.TimeSynchronization.Enums.GranularityEnum.kMillisecondsGranularity)) + def pics_TC_TIMESYNC_2_10(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_10(self): diff --git a/src/python_testing/TC_TIMESYNC_2_11.py b/src/python_testing/TC_TIMESYNC_2_11.py index 3e0a4e070c1ca2..ed91a12779ee1b 100644 --- a/src/python_testing/TC_TIMESYNC_2_11.py +++ b/src/python_testing/TC_TIMESYNC_2_11.py @@ -51,6 +51,9 @@ def wait_for_dst_status(self, th_utc, wait_s, expect_active): asserts.fail("Did not receive DSTStatus event") pass + def pics_TC_TIMESYNC_2_11(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_11(self): diff --git a/src/python_testing/TC_TIMESYNC_2_12.py b/src/python_testing/TC_TIMESYNC_2_12.py index 500fda6f985abb..048c37677cc7e1 100644 --- a/src/python_testing/TC_TIMESYNC_2_12.py +++ b/src/python_testing/TC_TIMESYNC_2_12.py @@ -51,6 +51,9 @@ def wait_for_tz_status(self, th_utc, wait_s, expected_offset, expected_name): except queue.Empty: asserts.fail("Did not receive TZStatus event") + def pics_TC_TIMESYNC_2_12(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_12(self): diff --git a/src/python_testing/TC_TIMESYNC_2_13.py b/src/python_testing/TC_TIMESYNC_2_13.py index ddebc27d287162..ceabb23e5df5c7 100644 --- a/src/python_testing/TC_TIMESYNC_2_13.py +++ b/src/python_testing/TC_TIMESYNC_2_13.py @@ -34,6 +34,9 @@ def wait_for_trusted_time_souce_event(self, timeout): except queue.Empty: asserts.fail("Did not receive MissingTrustedTimeSouce event") + def pics_TC_TIMESYNC_2_13(self) -> list[str]: + return ["TIMESYNC.S.F01"] + @async_test_body async def test_TC_TIMESYNC_2_13(self): diff --git a/src/python_testing/TC_TIMESYNC_2_2.py b/src/python_testing/TC_TIMESYNC_2_2.py index f364c4443b3390..e80dcab0738181 100644 --- a/src/python_testing/TC_TIMESYNC_2_2.py +++ b/src/python_testing/TC_TIMESYNC_2_2.py @@ -29,6 +29,9 @@ async def read_ts_attribute_expect_success(self, endpoint, attribute): cluster = Clusters.Objects.TimeSynchronization return await self.read_single_attribute_check_success(endpoint=endpoint, cluster=cluster, attribute=attribute) + def pics_TC_TIMESYNC_2_2(self) -> list[str]: + return ["TIMESYNC.S"] + @async_test_body async def test_TC_TIMESYNC_2_2(self): diff --git a/src/python_testing/TC_TIMESYNC_2_4.py b/src/python_testing/TC_TIMESYNC_2_4.py index b6b9644fd52719..20cfb21fb89fcd 100644 --- a/src/python_testing/TC_TIMESYNC_2_4.py +++ b/src/python_testing/TC_TIMESYNC_2_4.py @@ -43,6 +43,9 @@ async def send_set_time_zone_cmd_expect_error(self, tz: typing.List[Clusters.Obj asserts.assert_equal(e.status, error, "Unexpected error returned") pass + def pics_TC_TIMESYNC_2_4(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_4(self): diff --git a/src/python_testing/TC_TIMESYNC_2_5.py b/src/python_testing/TC_TIMESYNC_2_5.py index c0a384d6c8a2b0..ed221258972398 100644 --- a/src/python_testing/TC_TIMESYNC_2_5.py +++ b/src/python_testing/TC_TIMESYNC_2_5.py @@ -40,6 +40,9 @@ async def send_set_dst_cmd_expect_error(self, dst: typing.List[Clusters.Objects. asserts.assert_equal(e.status, error, "Unexpected error returned") pass + def pics_TC_TIMESYNC_2_5(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_5(self): diff --git a/src/python_testing/TC_TIMESYNC_2_6.py b/src/python_testing/TC_TIMESYNC_2_6.py index ebd02ff3622f83..bd57aa477e808f 100644 --- a/src/python_testing/TC_TIMESYNC_2_6.py +++ b/src/python_testing/TC_TIMESYNC_2_6.py @@ -40,6 +40,9 @@ async def send_set_default_ntp_cmd_expect_error(self, ntp: typing.Union[Nullable asserts.assert_equal(e.status, error, "Unexpected error returned") pass + def pics_TC_TIMESYNC_2_6(self) -> list[str]: + return ["TIMESYNC.S.F01"] + @async_test_body async def test_TC_TIMESYNC_2_6(self): diff --git a/src/python_testing/TC_TIMESYNC_2_7.py b/src/python_testing/TC_TIMESYNC_2_7.py index 8af89465bd3e5a..7928128d6b5311 100644 --- a/src/python_testing/TC_TIMESYNC_2_7.py +++ b/src/python_testing/TC_TIMESYNC_2_7.py @@ -46,6 +46,9 @@ async def send_set_dst_cmd(self, dst: typing.List[Clusters.Objects.TimeSynchroni async def send_set_utc_cmd(self, utc: uint) -> None: await self.send_single_cmd(cmd=Clusters.Objects.TimeSynchronization.Commands.SetUTCTime(UTCTime=utc, granularity=Clusters.Objects.TimeSynchronization.Enums.GranularityEnum.kMillisecondsGranularity)) + def pics_TC_TIMESYNC_2_7(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_7(self): diff --git a/src/python_testing/TC_TIMESYNC_2_8.py b/src/python_testing/TC_TIMESYNC_2_8.py index 828b962ea5fef8..dd0c0c55e0c5ed 100644 --- a/src/python_testing/TC_TIMESYNC_2_8.py +++ b/src/python_testing/TC_TIMESYNC_2_8.py @@ -50,6 +50,9 @@ async def send_set_dst_cmd(self, dst: typing.List[Clusters.Objects.TimeSynchroni async def send_set_utc_cmd(self, utc: uint) -> None: await self.send_single_cmd(cmd=Clusters.Objects.TimeSynchronization.Commands.SetUTCTime(UTCTime=utc, granularity=Clusters.Objects.TimeSynchronization.Enums.GranularityEnum.kMillisecondsGranularity)) + def pics_TC_TIMESYNC_2_8(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_8(self): diff --git a/src/python_testing/TC_TIMESYNC_2_9.py b/src/python_testing/TC_TIMESYNC_2_9.py index a1d10d4c9616cc..e73c919ce40c2b 100644 --- a/src/python_testing/TC_TIMESYNC_2_9.py +++ b/src/python_testing/TC_TIMESYNC_2_9.py @@ -45,6 +45,9 @@ async def send_set_dst_cmd(self, dst: typing.List[Clusters.Objects.TimeSynchroni async def send_set_utc_cmd(self, utc: uint) -> None: await self.send_single_cmd(cmd=Clusters.Objects.TimeSynchronization.Commands.SetUTCTime(UTCTime=utc, granularity=Clusters.Objects.TimeSynchronization.Enums.GranularityEnum.kMillisecondsGranularity)) + def pics_TC_TIMESYNC_2_9(self) -> list[str]: + return ["TIMESYNC.S.F00"] + @async_test_body async def test_TC_TIMESYNC_2_9(self): diff --git a/src/python_testing/TC_TIMESYNC_3_1.py b/src/python_testing/TC_TIMESYNC_3_1.py index f05730e58dcad0..f7cff6d20e2e22 100644 --- a/src/python_testing/TC_TIMESYNC_3_1.py +++ b/src/python_testing/TC_TIMESYNC_3_1.py @@ -22,6 +22,9 @@ class TC_TIMESYNC_3_1(MatterBaseTest): + def pics_TC_TIMESYNC_3_1(self) -> list[str]: + return ["TIMESYNC.S"] + @async_test_body async def test_TC_TIMESYNC_3_1(self): self.print_step(1, "Wildcard read of time sync cluster")