[RVCOPSTATE-2.3] Add a check for PICS (#28588)
* check for countdowntime pics
* clean up
* address comments
* address comments
* address comments
* Revert "address comments"
This reverts commit dbdfa941f44f169734780dc008bfb015c711078e.
* add check for RVCOPSTATE.S.M.ST_RUNNING
* remove the check for paused and running pics
diff --git a/src/python_testing/TC_RVCOPSTATE_2_3.py b/src/python_testing/TC_RVCOPSTATE_2_3.py
index 405523c..c1cd3b0 100644
--- a/src/python_testing/TC_RVCOPSTATE_2_3.py
+++ b/src/python_testing/TC_RVCOPSTATE_2_3.py
@@ -55,7 +55,6 @@
self.endpoint = self.matter_test_config.global_test_params['PIXIT_ENDPOINT']
- asserts.assert_true(self.check_pics("RVCOPSTATE.S.A0002"), "RVCOPSTATE.S.A0002 must be supported")
asserts.assert_true(self.check_pics("RVCOPSTATE.S.A0003"), "RVCOPSTATE.S.A0003 must be supported")
asserts.assert_true(self.check_pics("RVCOPSTATE.S.A0004"), "RVCOPSTATE.S.A0004 must be supported")
asserts.assert_true(self.check_pics("RVCOPSTATE.S.C00.Rsp"), "RVCOPSTATE.S.C00.Rsp must be supported")
@@ -93,25 +92,26 @@
asserts.assert_equal(operational_state, Clusters.OperationalState.Enums.OperationalStateEnum.kPaused,
"OperationalState(%s) should be Paused(0x02)" % operational_state)
- self.print_step(6, "Read CountdownTime attribute")
- initial_countdown_time = await self.read_mod_attribute_expect_success(endpoint=self.endpoint,
- attribute=attributes.CountdownTime)
- logging.info("CountdownTime: %s" % (initial_countdown_time))
- if initial_countdown_time is not NullValue:
- in_range = (1 <= initial_countdown_time <= 259200)
- asserts.assert_true(initial_countdown_time is NullValue or in_range,
- "invalid CountdownTime(%s). Must be in between 1 and 259200, or null" % initial_countdown_time)
+ if self.check_pics("RVCOPSTATE.S.A0002"):
+ self.print_step(6, "Read CountdownTime attribute")
+ initial_countdown_time = await self.read_mod_attribute_expect_success(endpoint=self.endpoint,
+ attribute=attributes.CountdownTime)
+ logging.info("CountdownTime: %s" % (initial_countdown_time))
+ if initial_countdown_time is not NullValue:
+ in_range = (1 <= initial_countdown_time <= 259200)
+ asserts.assert_true(initial_countdown_time is NullValue or in_range,
+ "invalid CountdownTime(%s). Must be in between 1 and 259200, or null" % initial_countdown_time)
- self.print_step(7, "Waiting for 5 seconds")
- time.sleep(5)
+ self.print_step(7, "Waiting for 5 seconds")
+ time.sleep(5)
- self.print_step(8, "Read CountdownTime attribute")
- countdown_time = await self.read_mod_attribute_expect_success(endpoint=self.endpoint, attribute=attributes.CountdownTime)
- logging.info("CountdownTime: %s" % (countdown_time))
- asserts.assert_true(countdown_time != 0 or countdown_time == NullValue,
- "invalid CountdownTime(%s). Must be a non zero integer, or null" % countdown_time)
- asserts.assert_equal(countdown_time, initial_countdown_time,
- "CountdownTime(%s) does not equal to the intial CountdownTime (%s)" % (countdown_time, initial_countdown_time))
+ self.print_step(8, "Read CountdownTime attribute")
+ countdown_time = await self.read_mod_attribute_expect_success(endpoint=self.endpoint, attribute=attributes.CountdownTime)
+ logging.info("CountdownTime: %s" % (countdown_time))
+ asserts.assert_true(countdown_time != 0 or countdown_time == NullValue,
+ "invalid CountdownTime(%s). Must be a non zero integer, or null" % countdown_time)
+ asserts.assert_equal(countdown_time, initial_countdown_time,
+ "CountdownTime(%s) does not equal to the intial CountdownTime (%s)" % (countdown_time, initial_countdown_time))
self.print_step(9, "Send Pause command")
ret = await self.send_pause_cmd()