diff --git a/src/python_testing/TC_SEAR_1_3.py b/src/python_testing/TC_SEAR_1_3.py index 50818c3c6033fb..5e66e54c0c12f6 100644 --- a/src/python_testing/TC_SEAR_1_3.py +++ b/src/python_testing/TC_SEAR_1_3.py @@ -163,7 +163,7 @@ async def test_TC_SEAR_1_3(self): else: self.wait_for_user_input(prompt_msg=f"{test_step}, and press Enter when done.\n") - if self.check_pics("SEAR.S.F00"): + if await self.feature_guard(endpoint=self.endpoint, cluster=Clusters.ServiceArea, feature_int=Clusters.ServiceArea.Bitmaps.Feature.kSelectWhileRunning): await self.send_cmd_select_areas_expect_response(step=15, new_areas=valid_areas, expected_response=Clusters.ServiceArea.Enums.SelectAreasStatus.kSuccess) else: await self.send_cmd_select_areas_expect_response(step=15, new_areas=valid_areas, expected_response=Clusters.ServiceArea.Enums.SelectAreasStatus.kInvalidInMode) diff --git a/src/python_testing/TC_SEAR_1_5.py b/src/python_testing/TC_SEAR_1_5.py index 96209191e6458b..53db09ebe67c05 100644 --- a/src/python_testing/TC_SEAR_1_5.py +++ b/src/python_testing/TC_SEAR_1_5.py @@ -111,6 +111,9 @@ async def test_TC_SEAR_1_5(self): asserts.fail("The --app-pid flag must be set when PICS_SDK_CI_ONLY is set") self.app_pipe = self.app_pipe + str(app_pid) + if not await self.command_guard(endpoint=self.endpoint, command=Clusters.ServiceArea.Commands.SkipArea): + asserts.fail("Skip Area Response command needs to be supported to run this test") + self.print_step(1, "Commissioning, already done") # Ensure that the device is in the correct state @@ -167,7 +170,7 @@ async def test_TC_SEAR_1_5(self): if not self.check_pics("SEAR.S.M.VALID_STATE_FOR_SKIP"): return - if self.check_pics("SEAR.S.A0005"): + if await self.attribute_guard(endpoint=self.endpoint, attribute=Clusters.ServiceArea.Attributes.Progress): old_progress_list = await self.read_progress(step=9) asserts.assert_true(len(old_progress_list) > 0, f"len of Progress({len(old_progress_list)}) should not be zero)") @@ -175,7 +178,7 @@ async def test_TC_SEAR_1_5(self): asserts.assert_true(len(selected_areas) > 0, "SelectedAreas is empty") old_current_area = NullValue - if self.check_pics("SEAR.S.A0003"): + if await self.attribute_guard(endpoint=self.endpoint, attribute=Clusters.ServiceArea.Attributes.CurrentArea): old_current_area = await self.read_current_area(step=11) self.print_step("12", "") @@ -189,7 +192,7 @@ async def test_TC_SEAR_1_5(self): if not self.is_ci: self.wait_for_user_input(prompt_msg=f"{test_step}, and press Enter when done.\n") - if self.check_pics("SEAR.S.A0005"): + if await self.attribute_guard(endpoint=self.endpoint, attribute=Clusters.ServiceArea.Attributes.Progress): new_progress_list = await self.read_progress(step=15) asserts.assert_true(len(new_progress_list) > 0, f"len of Progress({len(new_progress_list)}) should not be zero)") @@ -230,7 +233,7 @@ async def test_TC_SEAR_1_5(self): self.print_step("17", "") return - if not self.check_pics("SEAR.S.A0005"): + if not await self.attribute_guard(endpoint=self.endpoint, attribute=Clusters.ServiceArea.Attributes.Progress): return if self.check_pics("SEAR.S.M.HAS_MANUAL_SKIP_STATE_CONTROL"): diff --git a/src/python_testing/TC_SEAR_1_6.py b/src/python_testing/TC_SEAR_1_6.py index 6e5c2157d0b35e..592461d214ed54 100644 --- a/src/python_testing/TC_SEAR_1_6.py +++ b/src/python_testing/TC_SEAR_1_6.py @@ -94,6 +94,17 @@ async def test_TC_SEAR_1_6(self): asserts.fail("The --app-pid flag must be set when PICS_SDK_CI_ONLY is set") self.app_pipe = self.app_pipe + str(app_pid) + attributes = Clusters.ServiceArea.Attributes + + if not await self.attribute_guard(endpoint=self.endpoint, attribute=attributes.SupportedAreas): + asserts.fail("Supported areas attribute required in attribute list to run test") + + if not await self.attribute_guard(endpoint=self.endpoint, attribute=attributes.SelectedAreas): + asserts.fail("Selected areas attribute required in attribute list to run test") + + if not await self.attribute_guard(endpoint=self.endpoint, attribute=attributes.Progress): + asserts.fail("Progress attribute required in attribute list to run test") + self.print_step(1, "Commissioning, already done") # Ensure that the device is in the correct state