diff --git a/src/app/tests/suites/certification/PICS.yaml b/src/app/tests/suites/certification/PICS.yaml index 8070ca3cb7c072..2affde1181c68c 100644 --- a/src/app/tests/suites/certification/PICS.yaml +++ b/src/app/tests/suites/certification/PICS.yaml @@ -844,6 +844,45 @@ PICS: "Does the DUT support sending the DisableActionWithDuration command?" id: ACT.C.C0b.Tx + # + # server / commandsGenerated + # + - label: "Does the device implement of InstantAction command?" + id: ACT.S.C00.Rsp + + - label: "Does the device implement of InstantActionWithTransition command?" + id: ACT.S.C01.Rsp + + - label: "Does the device implement of StartAction command?" + id: ACT.S.C02.Rsp + + - label: "Does the device implement of StartActionWithDuration command?" + id: ACT.S.C03.Rsp + + - label: "Does the device implement of StopAction command?" + id: ACT.S.C04.Rsp + + - label: "Does the device implement of PauseAction command?" + id: ACT.S.C05.Rsp + + - label: "Does the device implement of PauseActionWithDuration command?" + id: ACT.S.C06.Rsp + + - label: "Does the device implement of ResumeAction command?" + id: ACT.S.C07.Rsp + + - label: "Does the device implement of EnableAction command?" + id: ACT.S.C08.Rsp + + - label: "Does the device implement of EnableActionWithDuration command?" + id: ACT.S.C09.Rsp + + - label: "Does the device implement of DisableAction command?" + id: ACT.S.C0a.Rsp + + - label: "Does the device implement of DisableActionWithDuration command?" + id: ACT.S.C0b.Rsp + # # client / manually # @@ -1813,9 +1852,12 @@ PICS: - label: "Does the device implement the DISHM cluster as a server?" id: DISHM.S - - label: "IDoes the DUT support testing the failed ChangeToMode command?" + - label: "Does the DUT support testing the failed ChangeToMode command?" id: DISHM.S.M.CAN_TEST_MODE_FAILURE + - label: "Can the mode changed by manually control at the device?" + id: DISHM.S.M.CAN_MANUALLY_CONTROLLED + # PIXIT - label: @@ -2063,6 +2105,15 @@ PICS: - label: "Does the DUT(Server) support LastConnectErrorValue attribute?" id: CNET.S.A0007 + - label: "Does the DUT(Server) support SupportedWiFiBands attribute?" + id: CNET.S.A0008 + + - label: "Does the DUT(Server) support SupportedThreadFeatures attribute?" + id: CNET.S.A0009 + + - label: "Does the DUT(Server) support ThreadVersion attribute?" + id: CNET.S.A000A + # # server / commandsReceived # @@ -5380,13 +5431,13 @@ PICS: # server / manually # - label: "Can the DUT be brought into a Wired Fault state?" - id: PS.M.ManualWiredFault + id: PS.S.M.ManualWiredFault - label: "Can the DUT be brought into a Battery Fault state?" - id: PS.M.ManualBatFault + id: PS.S.M.ManualBatFault - label: "Can the DUT be brought into a Battery Charge Fault state?" - id: PS.M.ManualBatChargeFault + id: PS.S.M.ManualBatChargeFault # # client / manually @@ -8899,6 +8950,9 @@ PICS: - label: "Does the DUT support testing the failed ChangeToMode command?" id: LWM.S.M.CAN_TEST_MODE_FAILURE + - label: "Can the mode changed by manually control at the device?" + id: LWM.S.M.CAN_MANUALLY_CONTROLLED + - label: "Id of mode the device will fail to transition to, given its current state" @@ -9055,6 +9109,9 @@ PICS: state" id: PIXIT.TCCM.MODE_CHANGE_FAIL + - label: "Can the mode changed by manually control at the device?" + id: TCCM.S.M.CAN_MANUALLY_CONTROLLED + #Features - label: "Does the device support depending on an On/Off cluster implemented on diff --git a/src/app/tests/suites/certification/Test_TC_ACFREMON_1_1.yaml b/src/app/tests/suites/certification/Test_TC_ACFREMON_1_1.yaml index a354e1c53c1203..3f4a7cc16bbd57 100644 --- a/src/app/tests/suites/certification/Test_TC_ACFREMON_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_ACFREMON_1_1.yaml @@ -73,7 +73,7 @@ tests: hasMasksSet: [0x2] - label: - "Step 3d: Given ACFREMON.S.F01(ReplacementProductList) ensure + "Step 3d: Given ACFREMON.S.F02(ReplacementProductList) ensure featuremap has the correct bit set" command: "readAttribute" attribute: "FeatureMap" diff --git a/src/app/tests/suites/certification/Test_TC_ACFREMON_2_1.yaml b/src/app/tests/suites/certification/Test_TC_ACFREMON_2_1.yaml index 797e87c5adfe18..987fd0a3fde749 100644 --- a/src/app/tests/suites/certification/Test_TC_ACFREMON_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_ACFREMON_2_1.yaml @@ -23,7 +23,9 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -52,15 +54,23 @@ tests: minValue: 0 maxValue: 1 - - label: "Step 4: TH reads from the DUT the ChangeIndication attribute." - PICS: ACFREMON.S.A0002 + - label: "Step 4a: TH reads from the DUT the ChangeIndication attribute." + PICS: ACFREMON.S.A0002 && !ACFREMON.S.F01 command: "readAttribute" attribute: "ChangeIndication" response: constraints: type: enum8 - minValue: 0 - maxValue: 2 + anyOf: [0, 2] + + - label: "Step 4b: TH reads from the DUT the ChangeIndication attribute." + PICS: ACFREMON.S.F01 && ACFREMON.S.A0002 + command: "readAttribute" + attribute: "ChangeIndication" + response: + value: 1 + constraints: + type: enum8 - label: "Step 5: TH reads from the DUT the InPlaceIndicator attribute" PICS: ACFREMON.S.A0003 diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_1.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_1.yaml index 7758d8d5c1cdea..98197f93ba4b27 100644 --- a/src/app/tests/suites/certification/Test_TC_ACL_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_ACL_2_1.yaml @@ -24,7 +24,7 @@ config: endpoint: 0 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: "Step 1: TH1 commissions DUT using admin node ID N1" cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -32,7 +32,9 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: TH reads SubjectsPerAccessControlEntry attribute from DUT" + - label: + "Step 2: TH1 reads DUT Endpoint 0 AccessControl cluster + SubjectsPerAccessControlEntry attribute" PICS: ACL.S.A0002 command: "readAttribute" attribute: "SubjectsPerAccessControlEntry" @@ -42,7 +44,9 @@ tests: minValue: 4 maxValue: 65535 - - label: "Step 3: TH reads TargetsPerAccessControlEntry attribute from DUT" + - label: + "Step 3: TH1 reads DUT Endpoint 0 AccessControl cluster + TargetsPerAccessControlEntry attribute" PICS: ACL.S.A0003 command: "readAttribute" attribute: "TargetsPerAccessControlEntry" @@ -52,12 +56,14 @@ tests: minValue: 3 maxValue: 65535 - - label: "Step 4: TH reads AccessControlEntriesPerFabric attribute from DUT" + - label: + "Step 4: TH1 reads DUT Endpoint 0 AccessControl cluster + AccessControlEntriesPerFabric attribute" PICS: ACL.S.A0004 command: "readAttribute" attribute: "AccessControlEntriesPerFabric" response: constraints: type: int16u - minValue: 3 + minValue: 4 maxValue: 65535 diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml index af287a4fa97869..1e769ec3c362ad 100644 --- a/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_ACL_2_3.yaml @@ -17,6 +17,7 @@ name: 133.2.3. [TC-ACL-2.3] Extension attribute PICS: - ACL.S + - ACL.S.A0001 config: nodeId: 0x12344321 @@ -54,7 +55,7 @@ config: defaultValue: "" tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: "Step 1: TH1 commissions DUT using admin node ID N1" cluster: "DelayCommands" command: "WaitForCommissionee" arguments: diff --git a/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml b/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml index 83f1ce0844a82a..50ebde13e9a2de 100644 --- a/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_ACT_1_1.yaml @@ -31,7 +31,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the global attribute: ClusterRevision" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +39,7 @@ tests: constraints: type: int16u - - label: "Step 3: Read the global attribute: FeatureMap" + - label: "Step 3: TH reads from the DUT the FeatureMap attribute." command: "readAttribute" attribute: "FeatureMap" response: @@ -47,7 +47,7 @@ tests: constraints: type: bitmap32 - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -76,36 +76,146 @@ tests: #Issue: https://github.com/project-chip/connectedhomeip/issues/26721 - label: "Step 5: TH reads EventList attribute from DUT" - verification: | - ./chip-tool actions read event-list 1 1 - - Via the TH (chip-tool), verify: - -that EventList attribute contains list of supported events. - -that list has 1 entry(0) for this cluster. - - [1676460741.103254][37023:37025] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0025 Attribute 0x0000_FFFA DataVersion: 928273128 - [1676460741.103303][37023:37025] CHIP:TOO: EventList: 1 entries - [1676460741.103320][37023:37025] CHIP:TOO: [1]: 0 - cluster: "LogCommands" - command: "UserPrompt" - PICS: PICS_USER_PROMPT && PICS_EVENT_LIST_ENABLED - arguments: - values: - - name: "message" - value: "Please enter 'y' for success" - - name: "expectedValue" - value: "y" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0, 1] # Checking only type check all commands are optional - - label: "Step 6: Read the global attribute: AcceptedCommandList" + - label: + "Step 6a: TH Read the optional command (InstantAction) in + AcceptedCommandList" + PICS: ACT.S.C00.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x0] + + - label: + "Step 6b: TH Read the optional command (InstantActionWithTransition) + in AcceptedCommandList" + PICS: ACT.S.C01.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x01] + + - label: + "Step 6C: TH Read the optional command (StartAction) in + AcceptedCommandList" + PICS: ACT.S.C02.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x02] + + - label: + "Step 6d: TH Read the optional command (StartActionWithDuration) in + AcceptedCommandList" + PICS: ACT.S.C03.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x03] + + - label: + "Step 6e: TH Read the optional command (StopAction) in + AcceptedCommandList" + PICS: ACT.S.C04.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x04] + - label: + "Step 6f: TH Read the optional command (PauseAction) in + AcceptedCommandList" + PICS: ACT.S.C05.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x05] + + - label: + "Step 6g: TH Read the optional command (PauseActionWithDuration) in + AcceptedCommandList" + PICS: ACT.S.C06.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x06] + + - label: + "Step 6h: TH Read the optional command (ResumeAction) in + AcceptedCommandList" + PICS: ACT.S.C07.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x07] + + - label: + "Step 6i: TH Read the optional command (EnableAction) in + AcceptedCommandList" + PICS: ACT.S.C08.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x08] + - label: + "Step 6j: TH Read the optional command (EnableActionWithDuration) in + AcceptedCommandList" + PICS: ACT.S.C09.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x09] + + - label: + "Step 6k: TH Read the optional command (DisableAction) in + AcceptedCommandList" + PICS: ACT.S.C0a.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0x0a] + + - label: + "Step 6l: TH Read the optional command (DisableActionWithDuration) in + AcceptedCommandList" + PICS: ACT.S.C0b.Rsp command: "readAttribute" attribute: "AcceptedCommandList" response: constraints: type: list - maxLength: 11 + contains: [0x0b] - - label: "Step 7: Read the global attribute: GeneratedCommandList" + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." command: "readAttribute" attribute: "GeneratedCommandList" response: diff --git a/src/app/tests/suites/certification/Test_TC_BINFO_1_1.yaml b/src/app/tests/suites/certification/Test_TC_BINFO_1_1.yaml index 1f909b06b83b1a..6a9c2eb23074b9 100644 --- a/src/app/tests/suites/certification/Test_TC_BINFO_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_BINFO_1_1.yaml @@ -12,9 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -name: - 12.1.1. [TC-BINFO-1.1] Global Attributes for Basic Information Cluster - [DUT-Server] +name: 12.1.1. [TC-BINFO-1.1] Global Attributes with DUT as Server PICS: - BINFO.S @@ -184,6 +182,17 @@ tests: type: list contains: [18] + - label: + "Step 4j: TH reads optional attribute(ProductAppearance) in + attributeList" + PICS: BINFO.S.A0014 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [20] + - label: "Step 5a: TH reads EventList from DUT" PICS: " !BINFO.S.E00 && !BINFO.S.E01 && !BINFO.S.E02 && !BINFO.S.A0011 && @@ -195,7 +204,7 @@ tests: constraints: type: list - - label: "Step 5b: Read BINFO.S.E00(StartUp) event in EventList" + - label: "Step 5b: TH reads BINFO.S.E00(StartUp) event in EventList" PICS: BINFO.S.E00 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -204,7 +213,7 @@ tests: type: list contains: [0] - - label: "Step 5c: Read BINFO.S.E01(ShutDown) event in EventList" + - label: "Step 5c: TH reads BINFO.S.E01(ShutDown) event in EventList" PICS: BINFO.S.E01 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -213,7 +222,7 @@ tests: type: list contains: [1] - - label: "Step 5d: Read BINFO.S.E02(Leave) event in EventList" + - label: "Step 5d: TH reads BINFO.S.E02(Leave) event in EventList" PICS: BINFO.S.E02 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -222,7 +231,7 @@ tests: type: list contains: [2] - - label: "Step 5e: Read (ReachableChanged) event in EventList" + - label: "Step 5e: TH reads (ReachableChanged) event in EventList" PICS: BINFO.S.A0011 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" diff --git a/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml index 3131f070d0fce3..d9055041616007 100644 --- a/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml @@ -23,7 +23,9 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -31,7 +33,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the global attribute: ClusterRevision" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute" command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +41,7 @@ tests: constraints: type: int16u - - label: "Step 3: Read the global attribute: FeatureMap" + - label: "Step 3: TH reads from the DUT the FeatureMap attribute" command: "readAttribute" attribute: "FeatureMap" response: @@ -47,7 +49,7 @@ tests: constraints: type: bitmap32 - - label: "Step 4: Read the global attribute: AttributeList" + - label: "Step 4: TH reads from the DUT the AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -56,7 +58,7 @@ tests: type: list contains: [0, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4: Read the global attribute: AttributeList" + - label: "Step 4: TH reads from the DUT the AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -65,7 +67,7 @@ tests: type: list contains: [0, 65528, 65529, 65531, 65532, 65533] - - label: "Step 5: Read the global attribute: EventList" + - label: "Step 5: TH reads from the DUT the EventList attribute" PICS: BOOL.S.E00 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -74,7 +76,7 @@ tests: constraints: type: list - - label: "Step 5: Read the global attribute: EventList" + - label: "Step 5: TH reads from the DUT the EventList attribute" PICS: " !BOOL.S.E00 && PICS_EVENT_LIST_ENABLED " command: "readAttribute" attribute: "EventList" @@ -83,7 +85,7 @@ tests: constraints: type: list - - label: "Step 6: Read the global attribute: AcceptedCommandList" + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute" command: "readAttribute" attribute: "AcceptedCommandList" response: @@ -91,7 +93,7 @@ tests: constraints: type: list - - label: "Step 7: Read the global attribute: GeneratedCommandList" + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute" command: "readAttribute" attribute: "GeneratedCommandList" response: diff --git a/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml b/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml index 2112bad42bf989..ef95ddd67bb3b9 100644 --- a/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_BRBINFO_1_1.yaml @@ -34,6 +34,7 @@ tests: - name: "nodeId" value: nodeId + #Issue: https://github.com/project-chip/connectedhomeip/issues/30467 - label: "Step 2: TH reads the ClusterRevision from DUT" command: "readAttribute" attribute: "ClusterRevision" @@ -207,7 +208,27 @@ tests: type: list contains: [18] - - label: "Step 5a: TH reads optional event(StartUp) in EventList" + - label: + "Step 4p: TH reads optional attribute(ProductAppearance) in + AttributeList" + PICS: BRBINFO.S.A0014 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [20] + + - label: "Step 5a: TH reads from the DUT the EventList attribute" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [3] + + - label: "Step 5b: TH reads optional event(StartUp) in EventList" PICS: BRBINFO.S.E00 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -216,7 +237,7 @@ tests: type: list contains: [0] - - label: "Step 5b: TH reads optional attribute(ShutDown) in EventList" + - label: "Step 5c: TH reads optional attribute(ShutDown) in EventList" PICS: BRBINFO.S.E01 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -225,7 +246,7 @@ tests: type: list contains: [1] - - label: "Step 5c: TH reads optional attribute(Leave) in EventList" + - label: "Step 5d TH reads optional attribute(Leave) in EventList" PICS: BRBINFO.S.E02 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" diff --git a/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml b/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml index b28b4fbb548f2a..afa472af0aa12b 100644 --- a/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml @@ -12,9 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -name: - 12.1.3. [TC-CNET-1.3] Global Attributes for Networking commissioning cluster - [DUT-Server] +name: 12.1.3. [TC-CNET-1.3] Global Attributes with DUT as Server PICS: - CNET.S @@ -33,7 +31,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the global attribute: ClusterRevision" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute" command: "readAttribute" attribute: "ClusterRevision" response: @@ -41,7 +39,7 @@ tests: constraints: type: int16u - - label: "Step 3a: Read the global attribute: FeatureMap" + - label: "Step 3a: TH reads from the DUT the FeatureMap attribute" PICS: " !CNET.S.F00 && !CNET.S.F01 && !CNET.S.F02 " command: "readAttribute" attribute: "FeatureMap" @@ -49,7 +47,8 @@ tests: value: 0 - label: - "Step 3b: Read the global attribute: FeatureMap when CNET.S.F00 is set" + "Step 3b: TH reads the global attribute: FeatureMap when CNET.S.F00 is + set" PICS: CNET.S.F00 command: "readAttribute" attribute: "FeatureMap" @@ -57,7 +56,8 @@ tests: value: 1 - label: - "Step 3c: Read the global attribute: FeatureMap when CNET.S.F01 is set" + "Step 3c: TH reads the global attribute: FeatureMap when CNET.S.F01 is + set" PICS: CNET.S.F01 command: "readAttribute" attribute: "FeatureMap" @@ -65,14 +65,15 @@ tests: value: 2 - label: - "Step 3d: Read the global attribute: FeatureMap when CNET.S.F02 is set" + "Step 3d: TH reads the global attribute: FeatureMap when CNET.S.F02 is + set" PICS: CNET.S.F02 command: "readAttribute" attribute: "FeatureMap" response: value: 4 - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4a: TH reads from the DUT the AttributeList attribute" PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -81,7 +82,7 @@ tests: type: list contains: [65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4b: TH reads from the DUT the AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -91,7 +92,7 @@ tests: contains: [65528, 65529, 65531, 65532, 65533] - label: - "Step 4b: Read mandatory attributes in AttributeList if + "Step 4c: TH reads mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true" PICS: CNET.S.F00 || CNET.S.F01 || CNET.S.F02 command: "readAttribute" @@ -102,9 +103,9 @@ tests: contains: [0, 1, 4, 5, 6, 7] - label: - "Step 4c: Read the optional attribute(ScanMaxTimeSeconds): - AttributeList" - PICS: CNET.S.A0002 + "Step 4d: TH reads the feature dependent + attribute(ScanMaxTimeSeconds): AttributeList" + PICS: CNET.S.F00 || CNET.S.F01 command: "readAttribute" attribute: "AttributeList" response: @@ -113,9 +114,9 @@ tests: contains: [2] - label: - "Step 4d: Reading optional attribute(ConnectMaxTimeSeconds) in - AttributeList" - PICS: CNET.S.A0003 + "Step 4e: TH reads the feature dependent + attribute(ConnectMaxTimeSeconds) in AttributeList" + PICS: CNET.S.F00 || CNET.S.F01 command: "readAttribute" attribute: "AttributeList" response: @@ -123,7 +124,29 @@ tests: type: list contains: [3] - - label: "Step 5: Read the global attribute: EventList" + - label: + "Step 4f: TH reads WIFI related attribute (SupportedWiFiBands) in + AttributeList" + PICS: CNET.S.F00 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [8] + + - label: + "Step 4g: TH reads Thread related attribute (SupportedWiFiBands and + ThreadVersion) in AttributeList" + PICS: CNET.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9, 10] + + - label: "Step 5: TH reads from the DUT the EventList attribute" PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -133,8 +156,8 @@ tests: type: list - label: - "Step 6a: Read AcceptedCommandList If DUT supports Wi-Fi/Thread - related features CNET.S.F00(WI),CNET.S.F01(TH)" + "Step 6a: TH reads AcceptedCommandList attribute from DUT. If DUT + supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH)" PICS: ( CNET.S.F00 || CNET.S.F01 ) command: "readAttribute" attribute: "AcceptedCommandList" @@ -144,8 +167,8 @@ tests: contains: [0, 4, 6, 8] - label: - "Step 6b: Read AcceptedCommandList If DUT supports Wi-Fi related - features (CNET.S.F00(WI) is true)" + "Step 6b: TH reads AcceptedCommandList attribute from DUT. If DUT + supports Wi-Fi related features (CNET.S.F00(WI) is true)" PICS: CNET.S.F00 command: "readAttribute" attribute: "AcceptedCommandList" @@ -155,8 +178,8 @@ tests: contains: [2] - label: - "Step 6c: Read AcceptedCommandList If DUT supports Thread related - features(CNET.S.F01(TH) is true)" + "Step 6c: TH reads AcceptedCommandList attribute from DUT. If DUT + supports Thread related features(CNET.S.F01(TH) is true)" PICS: CNET.S.F01 command: "readAttribute" attribute: "AcceptedCommandList" @@ -166,8 +189,8 @@ tests: contains: [3] - label: - "Step 6d: Read AcceptedCommandList If DUT supports Ethernet related - features(CNET.S.F02(TH) is true)" + "Step 6d: TH reads AcceptedCommandList attribute from DUT. If DUT + supports Ethernet related features(CNET.S.F02(TH) is true)" PICS: CNET.S.F02 command: "readAttribute" attribute: "AcceptedCommandList" @@ -175,8 +198,9 @@ tests: value: [] - label: - "Step 7a: Read the GeneratedCommandList If DUT supports Wi-Fi/Thread - related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true)" + "Step 7a: TH reads the GeneratedCommandList attribute from DUT. If DUT + supports Wi-Fi/Thread related features(CNET.S.F00(WI) or + CNET.S.F01(TH) is true)" PICS: ( CNET.S.F00 || CNET.S.F01 ) command: "readAttribute" attribute: "GeneratedCommandList" @@ -186,8 +210,8 @@ tests: contains: [1, 5, 7] - label: - "Step 7b: Read the GeneratedCommandList If DUT supports Ethernet - related features(CNET.S.F02(ET) must be true)" + "Step 7b: Read the GeneratedCommandList attribute from DUT. If DUT + supports Ethernet related features(CNET.S.F02(ET) must be true)" PICS: CNET.S.F02 command: "readAttribute" attribute: "GeneratedCommandList" diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_1.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_1.yaml index ce3979c6f5b09a..fda0797ddbd6e0 100644 --- a/src/app/tests/suites/certification/Test_TC_CNET_4_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_CNET_4_1.yaml @@ -186,3 +186,12 @@ tests: value: null constraints: type: int32s + + - label: "Step 14: TH reads the SupportedWiFiBands attribute from the DUT" + PICS: CNET.S.A0008 + command: "readAttribute" + attribute: "SupportedWiFiBands" + response: + constraints: + type: enum8 + minLength: 1 diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_2.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_2.yaml index 7b60871fdbc6e3..4ac1c8e0ceec8f 100644 --- a/src/app/tests/suites/certification/Test_TC_CNET_4_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_CNET_4_2.yaml @@ -193,3 +193,26 @@ tests: value: null constraints: type: int32s + + #Possibilites if Bit 4 (IsSynchronizedSleepyEndDeviceCapable) is only set if bit 2 (IsSleepyEndDeviceCapable) is also set expects value 20 + #Verify that Bit 0 (IsBorderRouterCapable) is only set if bit 3 (IsFullThreadDevice) is also set expected value 9 + #Verify that Bit 1 (IsRouterCapable) is only set if bit 3 (IsFullThreadDevice) is also set expected value 10 + #So the possibilites of value here are in the range of 0-20 expected value as per test-plan [0, 4, 8, 9, 10, 16, 20] + - label: + "Step 14: TH reads the SupportedThreadFeatures attribute from the DUT" + PICS: CNET.S.A0009 + command: "readAttribute" + attribute: "SupportedThreadFeatures" + response: + constraints: + type: bitmap16 + anyOf: [0, 4, 8, 9, 10, 16, 20] + + - label: "Step 15:TH reads the ThreadVersion attribute from the DUT" + PICS: CNET.S.A000A + command: "readAttribute" + attribute: "ThreadVersion" + response: + constraints: + type: int16u + minValue: 4 diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml index 23753cfd6eb56d..892ae4e63059b5 100644 --- a/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml +++ b/src/app/tests/suites/certification/Test_TC_CNET_4_5.yaml @@ -88,7 +88,7 @@ tests: "Step 2: TH sends RemoveNetwork command to the DUT with NetworkID field set to PIXIT.CNET.WIFI_1ST_ACCE SSPOINT_SSID and Breadcrumb field set to 1" - PICS: CNET.S.C04.Rsp + PICS: CNET.S.C02.Rsp && CNET.S.C04.Rsp command: "RemoveNetwork" arguments: values: diff --git a/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml b/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml index 341fe7d1cae131..a26524e4b59018 100644 --- a/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml +++ b/src/app/tests/suites/certification/Test_TC_CNET_4_9.yaml @@ -81,7 +81,9 @@ tests: - name: "DebugText" value: "" - - label: "Step 2: TH reads Networks attribute from the DUT " + - label: + "Step 2: TH reads Networks attribute from the DUT and saves the number + of entries as 'NumNetworks' " PICS: CNET.S.A0001 command: "readAttribute" attribute: "Networks" @@ -201,6 +203,7 @@ tests: - label: "Step 10: TH reads Breadcrumb attribute from the General Commissioning cluster of the DUT" + PICS: CNET.S.C04.Rsp cluster: "General Commissioning" command: "readAttribute" attribute: "Breadcrumb" @@ -277,6 +280,7 @@ tests: value: 0 - label: "Step 15: TH sends the CommissioningComplete command to the DUT" + PICS: CNET.S.C04.Rsp cluster: "General Commissioning" command: "CommissioningComplete" response: diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml index 47def58fc08331..bfc80220b4a877 100644 --- a/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DD_3_1.yaml @@ -17,6 +17,7 @@ name: 3.3.1. [TC-DD-3.1] Commissioning Flow - Concurrent [DUT - Commissionee] PICS: - MCORE.ROLE.COMMISSIONEE + - "!MCORE.DD.NON_CONCURRENT_CONNECTION" config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml b/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml index 58a43e7367e191..4814d35ee82829 100644 --- a/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_DD_3_2.yaml @@ -18,6 +18,7 @@ name: PICS: - MCORE.ROLE.COMMISSIONEE + - MCORE.DD.NON_CONCURRENT_CONNECTION config: nodeId: 0x12344321 @@ -298,7 +299,7 @@ tests: - label: "Step 9: Commissioner instructs Commissionee to connect to operational - network if not already connected" + network" verification: | Verify in TH(CHIP-TOOL) diff --git a/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml index 147242c5db841e..7342101677e115 100644 --- a/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DGGEN_1_1.yaml @@ -31,7 +31,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the global attribute: ClusterRevision" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +39,7 @@ tests: constraints: type: int16u - - label: "Step 3: Read the global attribute: FeatureMap" + - label: "Step 3: TH reads from the DUT the FeatureMap attribute." command: "readAttribute" attribute: "FeatureMap" response: @@ -47,7 +47,7 @@ tests: constraints: type: bitmap32 - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -56,7 +56,7 @@ tests: type: list contains: [0, 1, 8, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -68,6 +68,7 @@ tests: - label: "Step 4b: Validate presence of mandatory attribute(UpTime) in AttributeList" + PICS: DGGEN.S.A0002 command: "readAttribute" attribute: "AttributeList" response: @@ -76,7 +77,7 @@ tests: contains: [2] - label: - "Step 4c: Read optional attribute(TotalOperationalHours) in + "Step 4c: TH reads optional attribute(TotalOperationalHours) in AttributeList" PICS: DGGEN.S.A0003 command: "readAttribute" @@ -86,7 +87,7 @@ tests: type: list contains: [3] - - label: "Step 4d: Read optional attribute(BootReason) in AttributeList" + - label: "Step 4d: TH reads optional attribute(BootReason) in AttributeList" PICS: DGGEN.S.A0004 command: "readAttribute" attribute: "AttributeList" @@ -96,7 +97,7 @@ tests: contains: [4] - label: - "Step 4e: Read optional attribute(ActiveHardwareFaults) in + "Step 4e: TH reads optional attribute(ActiveHardwareFaults) in AttributeList" PICS: DGGEN.S.A0005 command: "readAttribute" @@ -107,7 +108,8 @@ tests: contains: [5] - label: - "Step 4f: Read optional attribute(ActiveRadioFaults) in AttributeList" + "Step 4f: TH reads optional attribute(ActiveRadioFaults) in + AttributeList" PICS: DGGEN.S.A0006 command: "readAttribute" attribute: "AttributeList" @@ -117,7 +119,7 @@ tests: contains: [6] - label: - "Step 4g: Read optional attribute(ActiveNetworkFaults) in + "Step 4g: TH reads optional attribute(ActiveNetworkFaults) in AttributeList" PICS: DGGEN.S.A0007 command: "readAttribute" @@ -127,7 +129,7 @@ tests: type: list contains: [7] - - label: "Step 5a: Read the global attribute: EventList" + - label: "Step 5a: TH reads from the DUT the EventList attribute" PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -136,7 +138,8 @@ tests: type: list contains: [3] - - label: "Step 5b: Read optional event(HardwareFaultChange) in EventList" + - label: + "Step 5b: TH reads optional event(HardwareFaultChange) in EventList" PICS: DGGEN.S.E00 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -145,7 +148,7 @@ tests: type: list contains: [0] - - label: "Step 5c: Read optional event(RadioFaultChange) in EventList" + - label: "Step 5c: TH reads optional event(RadioFaultChange) in EventList" PICS: DGGEN.S.E01 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -154,7 +157,7 @@ tests: type: list contains: [1] - - label: "Step 5d: Read optional event(NetworkFaultChange) in EventList" + - label: "Step 5d: TH reads optional event(NetworkFaultChange) in EventList" PICS: DGGEN.S.E02 && PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "EventList" @@ -163,7 +166,7 @@ tests: type: list contains: [2] - - label: "Step 6: Read the global attribute: AcceptedCommandList" + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute" command: "readAttribute" attribute: "AcceptedCommandList" response: @@ -171,7 +174,7 @@ tests: type: list contains: [0, 1] - - label: "Step 7: TH reads GeneratedCommandList from DUT" + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute" command: "readAttribute" attribute: "GeneratedCommandList" response: diff --git a/src/app/tests/suites/certification/Test_TC_DISHM_3_1.yaml b/src/app/tests/suites/certification/Test_TC_DISHM_3_1.yaml index e4262969f37951..7d00383866d22b 100644 --- a/src/app/tests/suites/certification/Test_TC_DISHM_3_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DISHM_3_1.yaml @@ -13,10 +13,13 @@ # limitations under the License. # Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default -name: 263.4.1. [TC-DISHM-3.1] OnMode verification with DUT as Server +name: 263.4.1. [TC-DISHM-3.1] On Mode functionality with DUT as Server PICS: - - DISHM.S + - DISHM.S.A0003 + - DISHM.S.F00 + - OO.S.C00.Rsp + - OO.S.C01.Rsp config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_DISHM_3_2.yaml b/src/app/tests/suites/certification/Test_TC_DISHM_3_2.yaml index dfb4d8915d4618..9043b8f8f31d9c 100644 --- a/src/app/tests/suites/certification/Test_TC_DISHM_3_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_DISHM_3_2.yaml @@ -13,10 +13,10 @@ # limitations under the License. # Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default -name: 263.4.2. [TC-DISHM-3.2] StartUpMode verification with DUT as Server +name: 263.4.2. [TC-DISHM-3.2] Startup Mode functionality with DUT as Server PICS: - - DISHM.S + - DISHM.S.A0002 config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_DISHM_3_3.yaml b/src/app/tests/suites/certification/Test_TC_DISHM_3_3.yaml index 2b394a489a86ae..6a34bb32cd7cb2 100644 --- a/src/app/tests/suites/certification/Test_TC_DISHM_3_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_DISHM_3_3.yaml @@ -13,10 +13,15 @@ # limitations under the License. # Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default -name: 189.3.3.[TC-DISHM-3.3] OnMode overwriting StartUpMode with DUT as Server +name: + 189.3.3.[TC-DISHM-3.3] On Mode and Startup Mode functionality with DUT as + Server PICS: - - DISHM.S + - DISHM.S.A0002 + - DISHM.S.A0003 + - DISHM.S.F00 + - OO.S.A4003 config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml index b049f65f8a7d64..a1a9ac16364702 100755 --- a/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml @@ -160,8 +160,10 @@ tests: response: value: LockStateValue - - label: "Step 1d: TH sends a Lock Door command to the DUT." - PICS: DRLK.S.C00.Rsp && DRLK.S.F00 && DRLK.S.F07 + - label: + "Step 1d: TH sends a Lock Door command to the DUT. If DRLK.S.F00(PIN) + & DRLK.S.F07(COTA), include a Valid PINCode in the Lock Door command." + PICS: DRLK.S.C00.Rsp && DRLK.S.F00 && DRLK.S.F07 && DRLK.S.A0000 command: "LockDoor" timedInteractionTimeoutMs: 1000 arguments: @@ -170,7 +172,7 @@ tests: value: "123456" - label: "Step 1d: TH sends a Lock Door command to the DUT." - PICS: DRLK.S.C00.Rsp && !DRLK.S.F00 && !DRLK.S.F07 + PICS: DRLK.S.C00.Rsp && !DRLK.S.F00 && !DRLK.S.F07 && DRLK.S.A0000 command: "LockDoor" timedInteractionTimeoutMs: 1000 @@ -190,13 +192,16 @@ tests: response: value: 1 - - label: "Step 1e: TH sends a Unlock Door command to the DUT." - PICS: DRLK.S.C01.Rsp && !DRLK.S.F00 && !DRLK.S.F07 + - label: + "Step 1e: TH sends a Unlock Door command to the DUT. If + DRLK.S.F00(PIN) & DRLK.S.F07(COTA), include a Valid PINCode in the + Unlock Door command" + PICS: DRLK.S.C01.Rsp && !DRLK.S.F00 && !DRLK.S.F07 && DRLK.S.A0000 command: "UnlockDoor" timedInteractionTimeoutMs: 1000 - label: "Step 1e: TH sends a Unlock Door command to the DUT." - PICS: DRLK.S.C01.Rsp && DRLK.S.F00 && DRLK.S.F07 + PICS: DRLK.S.C01.Rsp && DRLK.S.F00 && DRLK.S.F07 && DRLK.S.A0000 command: "UnlockDoor" timedInteractionTimeoutMs: 1000 arguments: @@ -602,7 +607,7 @@ tests: - label: "Step 13a: TH reads NumberOfHoliDay SchedulesSupported attribute from DUT" - PICS: DRLK.S.F0b && DRLK.S.A0016 + PICS: DRLK.S.F0b && DRLK.S.A0015 command: "readAttribute" attribute: "NumberOfHolidaySchedulesSupported" response: @@ -1325,8 +1330,8 @@ tests: - label: "Step 31b: TH writes WrongCodeEntryLimit attribute as 8" PICS: - ( DRLK.S.F00 || DRLK.S.F01 ) && - DRLK.S.M.WrongCodeEntryLimitAttributeWritable + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0030 && + DRLK.S.M.WrongCodeEntryLimitAttributeWritable " command: "writeAttribute" attribute: "WrongCodeEntryLimit" arguments: @@ -1334,7 +1339,7 @@ tests: - label: "Step 31b: TH writes WrongCodeEntryLimit attribute as 8" PICS: - " ( DRLK.S.F00 || DRLK.S.F01 ) && + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0030 && !DRLK.S.M.WrongCodeEntryLimitAttributeWritable " command: "writeAttribute" attribute: "WrongCodeEntryLimit" @@ -1345,8 +1350,8 @@ tests: - label: "Step 31c: TH reads WrongCode EntryLimit attribute" PICS: - ( DRLK.S.F00 || DRLK.S.F01 ) && - DRLK.S.M.WrongCodeEntryLimitAttributeWritable + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0030 && + DRLK.S.M.WrongCodeEntryLimitAttributeWritable " command: "readAttribute" attribute: "WrongCodeEntryLimit" response: @@ -1354,7 +1359,7 @@ tests: - label: "Step 31c: TH reads WrongCode EntryLimit attribute" PICS: - " ( DRLK.S.F00 || DRLK.S.F01 ) && + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0030 && !DRLK.S.M.WrongCodeEntryLimitAttributeWritable " command: "readAttribute" attribute: "WrongCodeEntryLimit" @@ -1376,8 +1381,8 @@ tests: - label: "Step 32b: TH writes UserCodeTemporaryDisableTime attribute as 120" PICS: - ( DRLK.S.F00 || DRLK.S.F01 ) && - DRLK.S.M.UserCodedTemporaryDisableTimeAttributeWritable + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0031 && + DRLK.S.M.UserCodedTemporaryDisableTimeAttributeWritable " command: "writeAttribute" attribute: "UserCodeTemporaryDisableTime" arguments: @@ -1385,7 +1390,7 @@ tests: - label: "Step 32b: TH writes UserCodeTemporaryDisableTime attribute as 120" PICS: - " ( DRLK.S.F00 || DRLK.S.F01 ) && + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0031 && !DRLK.S.M.UserCodedTemporaryDisableTimeAttributeWritable " command: "writeAttribute" attribute: "UserCodeTemporaryDisableTime" @@ -1396,8 +1401,8 @@ tests: - label: "Step 32c: TH reads UserCodeTemporary DisableTime attribute" PICS: - ( DRLK.S.F00 || DRLK.S.F01 ) && - DRLK.S.M.UserCodedTemporaryDisableTimeAttributeWritable + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0031 && + DRLK.S.M.UserCodedTemporaryDisableTimeAttributeWritable " command: "readAttribute" attribute: "UserCodeTemporaryDisableTime" response: @@ -1405,7 +1410,7 @@ tests: - label: "Step 32c: TH reads UserCodeTemporary DisableTime attribute" PICS: - " ( DRLK.S.F00 || DRLK.S.F01 ) && + " ( DRLK.S.F00 || DRLK.S.F01 ) && DRLK.S.A0031 && !DRLK.S.M.UserCodedTemporaryDisableTimeAttributeWritable " command: "readAttribute" attribute: "UserCodeTemporaryDisableTime" diff --git a/src/app/tests/suites/certification/Test_TC_FLW_2_2.yaml b/src/app/tests/suites/certification/Test_TC_FLW_2_2.yaml index 64d7aa8c591812..9586e9e950086d 100644 --- a/src/app/tests/suites/certification/Test_TC_FLW_2_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_FLW_2_2.yaml @@ -23,7 +23,9 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -31,7 +33,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the mandatory attribute: MeasuredValue" + - label: "Step 2: TH reads from the DUT the MeasuredValue attribute." PICS: FLW.S.A0000 command: "readAttribute" attribute: "MeasuredValue" @@ -40,7 +42,7 @@ tests: constraints: type: int16u minValue: 0 - maxValue: 65535 + maxValue: 65534 - label: "Step 3: Operate on device to change the flow significantly" cluster: "LogCommands" @@ -53,7 +55,9 @@ tests: - name: "expectedValue" value: "y" - - label: "Step 4: Read the mandatory attribute: MeasuredValue" + - label: + "Step 4: After a few seconds, TH reads from the DUT the MeasuredValue + attribute." PICS: FLW.S.A0000 && FLW.M.FlowChange command: "readAttribute" attribute: "MeasuredValue" @@ -61,5 +65,5 @@ tests: constraints: type: int16u minValue: 0 - maxValue: 65535 + maxValue: 65534 notValue: ValueBeforeChange diff --git a/src/app/tests/suites/certification/Test_TC_G_2_4.yaml b/src/app/tests/suites/certification/Test_TC_G_2_4.yaml index 2941e036caf848..25f85829ac3dcc 100644 --- a/src/app/tests/suites/certification/Test_TC_G_2_4.yaml +++ b/src/app/tests/suites/certification/Test_TC_G_2_4.yaml @@ -32,7 +32,9 @@ config: Groups.Endpoint2: 2 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -58,7 +60,13 @@ tests: - label: "Step 2: TH sends KeySetWrite command in the GroupKeyManagement - cluster to DUT." + cluster to DUT on EP0 using a key that is pre-installed on the TH. + GroupKeySet fields are as follows: 1)GroupKeySetID: 1 + 2)GroupKeySecurityPolicy: TrustFirst (0) 3)EpochKey0: + d0d1d2d3d4d5d6d7d8d9dadbdcdddedf 4)EpochStartTime0: 1 5)EpochKey1: + d1d1d2d3d4d5d6d7d8d9dadbdcdddedf 6)EpochStartTime1: + 18446744073709551613 7)EpochKey2: d2d1d2d3d4d5d6d7d8d9dadbdcdddedf + 8)EpochStartTime2: 18446744073709551614" PICS: GRPKEY.S.C00.Rsp cluster: "Group Key Management" command: "KeySetWrite" @@ -102,7 +110,7 @@ tests: - label: "Step 5a: TH sends AddGroup command to DUT on PIXIT.G.ENDPOINT with - the following fields: GroupID as 0x0001,GroupName as 'Gp1'" + the following fields:1) GroupID as 0x0001, 2)GroupName as 'Gp1'" PICS: G.S.C00.Rsp && G.S.C00.Tx endpoint: Groups.Endpoint1 command: "AddGroup" diff --git a/src/app/tests/suites/certification/Test_TC_ICDM_2_3.yaml b/src/app/tests/suites/certification/Test_TC_ICDM_2_3.yaml deleted file mode 100644 index eed0da861284fa..00000000000000 --- a/src/app/tests/suites/certification/Test_TC_ICDM_2_3.yaml +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (c) 2023 Project CHIP Authors -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default - -name: 214.2.3. [TC-ICDM-2.3] Secondary functionality with DUT as Server - -PICS: - - ICDM.S - - ICDM.S.C00.Rsp - - ICDM.S.C02.Rsp - - ICDM.S.C03.Rsp - -config: - nodeId: 0x12344321 - cluster: "Basic Information" - endpoint: 0 - -tests: - - label: "Step 1: TH reads from the DUT the ActiveModeThreshold attribute." - PICS: ICDM.S.A0002 - verification: | - ./chip-tool icdmanagement read active-mode-threshold 1 0 - - On TH(chip-tool) log, Verify ActiveModeThreshold attribute should contains an uint16; value is 300 or higher below is the sample log provided for the raspi platform: - - - [1685127625953] [48160:461013] [TOO] Endpoint: 0 Cluster: 0x0000_0046 Attribute 0x0000_0002 DataVersion: 326159709 - [1685127625953] [48160:461013] [TOO] ActiveModeThreshold: 300 - disabled: true - - - label: "Step 2: TH sends StayActiveRequest command." - PICS: ICDM.S.C03.Rsp - verification: | - Verify DUT responds w/ status SUCCESS(0x00). - disabled: true - - - label: - "Step 3: Verify DUT increases the remaining time in active mode by one - ActiveModeThreshold" - PICS: ICDM.S.C03.Rsp - verification: | - Design details pending. - disabled: true diff --git a/src/app/tests/suites/certification/Test_TC_I_2_3.yaml b/src/app/tests/suites/certification/Test_TC_I_2_3.yaml index b3142302e5cd5a..379ed424638c9b 100644 --- a/src/app/tests/suites/certification/Test_TC_I_2_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_I_2_3.yaml @@ -16,6 +16,7 @@ name: 57.2.3. [TC-I-2.3] Secondary functionality with server as DUT PICS: - I.S + - I.S.C40.Rsp config: nodeId: 0x12344321 @@ -23,7 +24,9 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -32,9 +35,9 @@ tests: value: nodeId - label: - "Step 2a: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x00 blink and the effect variant field set to - 0x00 default" + "Step 2a: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x00 (blink) and the effect variant field set + to 0x00 (default)" PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -56,9 +59,9 @@ tests: value: "y" - label: - "Step 2b: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x01 breathe and the effect variant field set - to 0x00 default" + "Step 2b: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x01 (breathe) and the effect variant field + set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -80,9 +83,9 @@ tests: value: "y" - label: - "Step 2c: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x02 okay and the effect variant field set to - 0x00 default" + "Step 2c: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x02 (okay) and the effect variant field set + to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -104,9 +107,9 @@ tests: value: "y" - label: - "Step 2d: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x0b channel change and the effect variant - field set to 0x00 default" + "Step 2d:TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x0b (channel change) and the effect variant + field set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -128,9 +131,9 @@ tests: value: "y" - label: - "Step 2e: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x01 breathe and the effect variant field set - to 0x00 default" + "Step 2e: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x01 (breathe) and the effect variant field + set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -152,9 +155,9 @@ tests: value: "y" - label: - "Step 2f: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0xfe finish effect and the effect variant - field set to 0x00 default" + "Step 2f: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0xfe (finish effect) and the effect variant + field set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -176,9 +179,9 @@ tests: value: "y" - label: - "Step 2g: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x01 breathe and the effect variant field set - to 0x00 default" + "Step 2g: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x01 (breathe) and the effect variant field + set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -200,9 +203,9 @@ tests: value: "y" - label: - "Step 2h: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0xff stop effect and the effect variant field - set to 0x00 default" + "Step 2h: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0xff (stop effect) and the effect variant + field set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -224,9 +227,9 @@ tests: value: "y" - label: - "Step 3a: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0x00 blink and the effect variant field set to - 0x42 unknown" + "Step 3a: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0x00 (blink) and the effect variant field set + to 0x42 (unknown)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: @@ -248,9 +251,9 @@ tests: value: "y" - label: - "Step 3b: TH sends TriggerEffect command to DUT with the effect - identifier field set to 0xff stop effect and the effect variant field - set to 0x00 default" + "Step 3b: TH sends TriggerEffect command to DUT, with the effect + identifier field set to 0xff (stop effect) and the effect variant + field set to 0x00 (default)." PICS: I.S.C40.Rsp command: "TriggerEffect" arguments: diff --git a/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml b/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml index fac7434a5dd0f0..2dae158d9874dc 100644 --- a/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_LCFG_2_1.yaml @@ -37,7 +37,9 @@ config: defaultValue: "es-ES" tests: - - label: "Step 0: Wait for the commissioned device to be retrieved" + - label: + "Step 0: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -46,7 +48,7 @@ tests: value: nodeId - label: "Step 1a: TH reads SupportedLocales attribute from DUT" - PICS: LCFG.S.A0001 + PICS: LCFG.S.A0000 command: "readAttribute" attribute: "SupportedLocales" response: @@ -79,7 +81,7 @@ tests: error: UNSUPPORTED_WRITE - label: "Step 3: TH reads SupportedLocales attribute from DUT" - PICS: LCFG.S.A0001 + PICS: LCFG.S.A0000 command: "readAttribute" attribute: "SupportedLocales" response: diff --git a/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml index 969f09c8313941..76ca0f322f0e64 100644 --- a/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_LVL_1_1.yaml @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -name: 18.1.1. [TC-LVL-1.1] Global attributes with server as DUT +name: 18.1.1. [TC-LVL-1.1] Global Attributes with DUT as Server PICS: - LVL.S @@ -23,7 +23,9 @@ config: endpoint: 1 tests: - - label: "Step 0: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -31,7 +33,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 1: Read the global attribute: ClusterRevision" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +41,7 @@ tests: constraints: type: int16u - - label: "Step 2a: Read the global attribute: FeatureMap" + - label: "Step 3a: TH reads from the DUT the FeatureMap attribute." PICS: " !LVL.S.F00 && !LVL.S.F01 && !LVL.S.F02 " command: "readAttribute" attribute: "FeatureMap" @@ -49,7 +51,7 @@ tests: type: bitmap32 - label: - "Step 2b: Given LVL.S.F00(OO) ensure featuremap has the correct bit + "Step 3b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set" PICS: LVL.S.F00 command: "readAttribute" @@ -60,7 +62,7 @@ tests: hasMasksSet: [0x1] - label: - "Step 2c: Given LVL.S.F01(LT) ensure featuremap has the correct bit + "Step 3c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set" PICS: LVL.S.F01 command: "readAttribute" @@ -71,7 +73,7 @@ tests: hasMasksSet: [0x2] - label: - "Step 2d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit + "Step 3d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set" PICS: LVL.S.F02 command: "readAttribute" @@ -81,7 +83,7 @@ tests: type: bitmap32 hasMasksSet: [0x4] - - label: "Step 3a: Read the global attribute: AttributeList" + - label: "Step 4: TH reads from the DUT the AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -90,7 +92,7 @@ tests: type: list contains: [0, 15, 17, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 3a: Read the global attribute: AttributeList" + - label: "Step 4: TH reads from the DUT the AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -100,7 +102,7 @@ tests: contains: [0, 15, 17, 65528, 65529, 65531, 65532, 65533] - label: - "Step 3b: Read the optional attribute(StartUpCurrentLevel and + "Step 4a: TH reads the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList" PICS: LVL.S.F01 command: "readAttribute" @@ -111,8 +113,8 @@ tests: contains: [1, 16384] - label: - "Step 3c: Read the optional attribute(CurrentFrequency, MinFrequency - and MinFrequency) in AttributeList" + "Step 4b: TH reads the optional attribute(CurrentFrequency, + MinFrequency and MinFrequency) in AttributeList" PICS: LVL.S.F02 command: "readAttribute" attribute: "AttributeList" @@ -121,7 +123,8 @@ tests: type: list contains: [4, 5, 6] - - label: "Step 3d: Read the optional attribute(MinLevel) in AttributeList" + - label: + "Step 4c: TH reads the optional attribute(MinLevel) in AttributeList" PICS: LVL.S.A0002 command: "readAttribute" attribute: "AttributeList" @@ -130,7 +133,8 @@ tests: type: list contains: [2] - - label: "Step 3e: Read the optional attribute(MaxLevel) in AttributeList" + - label: + "Step 4d: TH reads the optional attribute(MaxLevel) in AttributeList" PICS: LVL.S.A0003 command: "readAttribute" attribute: "AttributeList" @@ -140,7 +144,7 @@ tests: contains: [3] - label: - "Step 3f: Read the optional attribute(OnOffTransitionTime) in + "Step 4e: TH reads the optional attribute(OnOffTransitionTime) in AttributeList" PICS: LVL.S.A0010 command: "readAttribute" @@ -151,7 +155,7 @@ tests: contains: [16] - label: - "Step 3g: Read the optional attribute(OnTransitionTime) in + "Step 4f: TH reads the optional attribute(OnTransitionTime) in AttributeList" PICS: LVL.S.A0012 command: "readAttribute" @@ -162,7 +166,7 @@ tests: contains: [18] - label: - "Step 3h: Read the optional attribute(OffTransitionTime) in + "Step 4g: TH reads the optional attribute(OffTransitionTime) in AttributeList" PICS: LVL.S.A0013 command: "readAttribute" @@ -173,7 +177,7 @@ tests: contains: [19] - label: - "Step 3i: Read the optional attribute(DefaultMoveRate) in + "Step 4h: TH reads the optional attribute(DefaultMoveRate) in AttributeList" PICS: LVL.S.A0014 command: "readAttribute" @@ -183,7 +187,16 @@ tests: type: list contains: [20] - - label: "Step 4a: Read the global attribute: AcceptedCommandList" + - label: "Step 5: Read the global attribute: EventList" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6a: TH reads from the DUT the AcceptedCommandList attribute." command: "readAttribute" attribute: "AcceptedCommandList" response: @@ -192,7 +205,7 @@ tests: contains: [0, 1, 2, 3, 4, 5, 6, 7] - label: - "Step 4a.1: Read the Feature-dependent(LVL.S.F02) command in + "Step 6a.1: TH reads the Feature-dependent(LVL.S.F02) command in AcceptedCommandList" PICS: LVL.S.F02 command: "readAttribute" @@ -202,19 +215,10 @@ tests: type: list contains: [8] - - label: "Step 4b: Read the global attribute: GeneratedCommandList" + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." command: "readAttribute" attribute: "GeneratedCommandList" response: value: [] constraints: type: list - - - label: "Step 5: Read the global attribute: EventList" - PICS: PICS_EVENT_LIST_ENABLED - command: "readAttribute" - attribute: "EventList" - response: - value: [] - constraints: - type: list diff --git a/src/app/tests/suites/certification/Test_TC_LWM_2_1.yaml b/src/app/tests/suites/certification/Test_TC_LWM_2_1.yaml index ebea6a0bbdbf94..a6a916f1b2e2d8 100644 --- a/src/app/tests/suites/certification/Test_TC_LWM_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_LWM_2_1.yaml @@ -82,7 +82,9 @@ tests: - label: "Step 5: Manually put the device in a state from which it will FAIL to transition to PIXIT.LWM.MODE_CHANGE_FAIL" - PICS: LWM.S.M.CAN_TEST_MODE_FAILURE && PICS_SKIP_SAMPLE_APP + PICS: + LWM.S.M.CAN_TEST_MODE_FAILURE && LWM.S.M.CAN_MANUALLY_CONTROLLED && + PICS_SKIP_SAMPLE_APP verification: | Manual operation required cluster: "LogCommands" @@ -95,7 +97,7 @@ tests: value: "y" - label: "Step 6: TH reads from the DUT the CurrentMode attribute." - PICS: LWM.S.A0001 + PICS: LWM.S.A0001 && LWM.S.M.CAN_MANUALLY_CONTROLLED command: "readAttribute" attribute: "CurrentMode" response: @@ -184,7 +186,7 @@ tests: - label: "Step 9: Manually put the device in a state from which it will SUCCESSFULLY transition to PIXIT.LWM.MODE_CHANGE_OK" - PICS: PICS_SKIP_SAMPLE_APP + PICS: LWM.S.M.CAN_MANUALLY_CONTROLLED && PICS_SKIP_SAMPLE_APP verification: | Manual operation required cluster: "LogCommands" @@ -197,7 +199,7 @@ tests: value: "y" - label: "Step 10: TH reads from the DUT the CurrentMode attribute." - PICS: LWM.S.A0001 + PICS: LWM.S.M.CAN_MANUALLY_CONTROLLED && LWM.S.A0001 command: "readAttribute" attribute: "CurrentMode" response: diff --git a/src/app/tests/suites/certification/Test_TC_LWM_3_1.yaml b/src/app/tests/suites/certification/Test_TC_LWM_3_1.yaml index 2c394033ef6b39..0b9a36eba56e80 100644 --- a/src/app/tests/suites/certification/Test_TC_LWM_3_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_LWM_3_1.yaml @@ -17,6 +17,8 @@ name: 183.3.1. [TC-LWM-3.1] On Mode functionality with DUT as Server PICS: - LWM.S.A0003 - LWM.S.F00 + - OO.S.C00.Rsp + - OO.S.C01.Rsp config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml b/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml index 22b7f897ef59a5..400bf68a776788 100644 --- a/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml @@ -33,6 +33,7 @@ tests: - name: "nodeId" value: nodeId + #Issue: https://github.com/project-chip/connectedhomeip/issues/29786 - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" diff --git a/src/app/tests/suites/certification/Test_TC_PSCFG_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PSCFG_1_1.yaml index ed8d6ddd8a5a54..d3ec7430f62bfe 100644 --- a/src/app/tests/suites/certification/Test_TC_PSCFG_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_PSCFG_1_1.yaml @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -name: 63.1.1. [TC-PSCFG-1.1] Global attributes with server as DUT +name: 63.1.1. [TC-PSCFG-1.1] Global Attributes with DUT as Server PICS: - PSCFG.S @@ -23,7 +23,9 @@ config: endpoint: 0 tests: - - label: "Step 1: Commission DUT to TH" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -31,7 +33,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: TH reads the ClusterRevision attribute from the DUT" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +41,7 @@ tests: constraints: type: int16u - - label: "Step 3: TH reads the FeatureMap attribute from the DUT" + - label: "Step 3: TH reads from the DUT the FeatureMap attribute." command: "readAttribute" attribute: "FeatureMap" response: @@ -47,7 +49,7 @@ tests: constraints: type: bitmap32 - - label: "Step 4: TH reads the AttributeList attribute from the DUT" + - label: "Step 4: TH reads from the DUT the AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -56,7 +58,7 @@ tests: type: list contains: [0, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4: TH reads the AttributeList attribute from the DUT" + - label: "Step 4: TH reads from the DUT the AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -65,26 +67,26 @@ tests: type: list contains: [0, 65528, 65529, 65531, 65532, 65533] - - label: "Step 5: TH reads the AcceptedCommandList attribute from the DUT" + - label: "Step 5: TH reads from the DUT the EventList attribute." + PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" - attribute: "AcceptedCommandList" + attribute: "EventList" response: value: [] constraints: type: list - - label: "Step 6: TH reads the GeneratedCommandList attribute from the DUT" + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." command: "readAttribute" - attribute: "GeneratedCommandList" + attribute: "AcceptedCommandList" response: value: [] constraints: type: list - - label: "Step 7: Read EventList attribute from the DUT." - PICS: PICS_EVENT_LIST_ENABLED + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." command: "readAttribute" - attribute: "EventList" + attribute: "GeneratedCommandList" response: value: [] constraints: diff --git a/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml index dca6317802a6c4..f0ac68665894fb 100644 --- a/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_PS_1_1.yaml @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -name: 62.1.1. [TC-PS-1.1] Global attributes with server as DUT +name: 62.1.1. [TC-PS-1.1] Global Attributes with DUT as Server PICS: - PS.S @@ -23,7 +23,9 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -31,7 +33,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the global attribute: ClusterRevision" + - label: "Step 2: Test Harness Client reads ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +41,7 @@ tests: constraints: type: int16u - - label: "Step 3a: Read the global attribute: FeatureMap" + - label: "Step 3a: TH reads from the DUT the FeatureMap attribute." PICS: " !PS.S.F00 && !PS.S.F01 && !PS.S.F02 && !PS.S.F03 " command: "readAttribute" attribute: "FeatureMap" @@ -92,7 +94,7 @@ tests: type: bitmap32 hasMasksSet: [0x2, 0x8] - - label: "Step 4: Read the global attribute: AttributeList" + - label: "Step 4: Test Harness Client reads AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -102,7 +104,7 @@ tests: contains: [0, 1, 2, 0x1f, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4: Read the global attribute: AttributeList" + - label: "Step 4: Test Harness Client reads AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -112,7 +114,7 @@ tests: contains: [0, 1, 2, 0x1f, 65528, 65529, 65531, 65532, 65533] - label: - "Step 4a: Read the Feature dependent(PS.S.F00-WIRED) attribute in + "Step 4a: TH reads the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList" PICS: PS.S.F00 command: "readAttribute" @@ -123,7 +125,7 @@ tests: contains: [5] - label: - "Step 4b: Read the Feature dependent(PS.S.F01-BAT) attribute in + "Step 4b: TH reads the Feature dependent(PS.S.F01-BAT) attribute in AttributeList" PICS: PS.S.F01 command: "readAttribute" @@ -134,7 +136,7 @@ tests: contains: [14, 15, 16] - label: - "Step 4c: Read the Feature dependent(PS.S.F02-RECHG) attribute in + "Step 4c: TH reads the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList" PICS: PS.S.F02 command: "readAttribute" @@ -145,7 +147,7 @@ tests: contains: [26, 28] - label: - "Step 4d: Read the Feature dependent(PS.S.F03-REPLC) attribute in + "Step 4d: TH reads the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList" PICS: PS.S.F03 command: "readAttribute" @@ -155,54 +157,55 @@ tests: type: list contains: [19, 25] - - label: "Step 5: Read the global attribute: AcceptedCommandList" + - label: "Step 5a: Test Harness Client reads EventList attribute." + PICS: "PICS_EVENT_LIST_ENABLED && !PS.S.E00 && !PS.S.E01 && !PS.S.E02 " command: "readAttribute" - attribute: "AcceptedCommandList" + attribute: "EventList" response: value: [] constraints: type: list - - label: "Step 6: Read the global attribute: GeneratedCommandList" + - label: "Step 5b: TH reads PS.S.E00(WiredFaultChange) event in EventList" + PICS: PICS_EVENT_LIST_ENABLED && PS.S.E00 command: "readAttribute" - attribute: "GeneratedCommandList" + attribute: "EventList" response: - value: [] constraints: type: list + contains: [0] - - label: "Step 7a: Read the global attribute: EventList" - PICS: "PICS_EVENT_LIST_ENABLED && !PS.S.E00 && !PS.S.E01 && !PS.S.E02 " + - label: "Step 5c: TH reads PS.S.E01(BatFaultChange) event in EventList" + PICS: PICS_EVENT_LIST_ENABLED && PS.S.E01 command: "readAttribute" attribute: "EventList" response: - value: [] constraints: type: list + contains: [1] - - label: "Step 7b: Read PS.S.E00(WiredFaultChange) event in EventList" - PICS: PICS_EVENT_LIST_ENABLED && PS.S.E00 + - label: + "Step 5d: TH reads PS.S.E02(BatChargeFaultChange) event in EventList" + PICS: PICS_EVENT_LIST_ENABLED && PS.S.E02 command: "readAttribute" attribute: "EventList" response: constraints: type: list - contains: [0] + contains: [2] - - label: "Step 7c: Read PS.S.E01(BatFaultChange) event in EventList" - PICS: PICS_EVENT_LIST_ENABLED && PS.S.E01 + - label: "Step 6: Test Harness Client reads AcceptedCommandList attribute." command: "readAttribute" - attribute: "EventList" + attribute: "AcceptedCommandList" response: + value: [] constraints: type: list - contains: [1] - - label: "Step 7d: Read PS.S.E02(BatChargeFaultChange) event in EventList" - PICS: PICS_EVENT_LIST_ENABLED && PS.S.E02 + - label: "Step 7: Test Harness Client reads GeneratedCommandList attribute." command: "readAttribute" - attribute: "EventList" + attribute: "GeneratedCommandList" response: + value: [] constraints: type: list - contains: [2] diff --git a/src/app/tests/suites/certification/Test_TC_PS_2_2.yaml b/src/app/tests/suites/certification/Test_TC_PS_2_2.yaml index 06681fa416abd7..2f4495168602ea 100644 --- a/src/app/tests/suites/certification/Test_TC_PS_2_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_PS_2_2.yaml @@ -51,7 +51,7 @@ tests: disabled: true - label: "Step 3a: Set up subscription to WiredFaultChange event" - PICS: PS.S.E00 && PS.M.ManualWiredFault + PICS: PS.S.E00 && PS.S.M.ManualWiredFault verification: | Please use Interactive mode to Verify subscription test step Here the command to enter interactive mode:-- ./chip-tool interactive start @@ -93,12 +93,13 @@ tests: disabled: true - label: "Step 3b: Bring the DUT into a wired fault state." + PICS: PS.S.E00 && PS.S.M.ManualWiredFault verification: | DUT ACTION REQUIRED disabled: true - label: "Step 4: TH reads the ActiveWiredFaults attribute from the DUT" - PICS: PS.S.A000a && PS.M.ManualWiredFault + PICS: PS.S.A000a && PS.S.M.ManualWiredFault verification: | Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE @@ -109,8 +110,16 @@ tests: General error: 0x86 (UNSUPPORTED_ATTRIBUTE) disabled: true + - label: + "Step 5: The Current field of Step 3b has to be the same as the value + of Step 4." + PICS: PS.S.E00 && PS.S.A000a && PS.S.M.ManualWiredFault + verification: | + + disabled: true + - label: "Step 6: Bring the DUT back into a clean state." - PICS: PS.S.E00 && PS.M.ManualWiredFault + PICS: PS.S.E00 && PS.S.M.ManualWiredFault verification: | DUT ACTION REQUIRED disabled: true @@ -133,7 +142,7 @@ tests: disabled: true - label: "Step 8a: Set up subscription to BatFaultChange event" - PICS: PS.S.E01 && PS.M.ManualBatFault + PICS: PS.S.E01 && PS.S.M.ManualBatFault verification: | Please use Interactive mode to Verify subscription test step Here the command to enter interactive mode:-- ./chip-tool interactive start @@ -174,12 +183,13 @@ tests: disabled: true - label: "Step 8b: Bring the DUT into a battery fault state." + PICS: PS.S.E01 && PS.S.M.ManualBatFault verification: | DUT ACTION REQUIRED disabled: true - label: "Step 9: TH reads the ActiveBatFaults attribute from the DUT" - PICS: PS.S.A0012 && PS.M.ManualBatFault + PICS: PS.S.A0012 && PS.S.M.ManualBatFault verification: | Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE @@ -190,7 +200,7 @@ tests: disabled: true - label: "Step 11: Bring the DUT back into a clean state." - PICS: PS.S.E01 && PS.M.ManualBatFault + PICS: PS.S.E01 && PS.S.M.ManualBatFault verification: | DUT ACTION REQUIRED disabled: true @@ -203,6 +213,7 @@ tests: - label: "Step 12b: TH reads the ActiveBatChargeFaults attribute from the DUT" + PICS: PS.S.A001e verification: | Optional Attribute - If it is supported, then in TH log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE @@ -213,7 +224,7 @@ tests: disabled: true - label: "Step 13a: Set up subscription to BatChargeFaultChange event" - PICS: PS.S.E02 && PS.M.ManualBatChargeFault + PICS: PS.S.E02 && PS.S.M.ManualBatChargeFault verification: | ./chip-tool interactive start @@ -253,6 +264,7 @@ tests: disabled: true - label: "Step 13b: Bring the DUT into a charge fault state." + PICS: PS.S.E02 && PS.S.M.ManualBatChargeFault verification: | DUT ACTION REQUIRED disabled: true @@ -269,8 +281,16 @@ tests: General error: 0x86 (UNSUPPORTED_ATTRIBUTE) disabled: true + - label: + "Step 5: The Current field of Step 13b has to be the same as the value + of Step 14." + PICS: PS.S.E02 && PS.S.A001e && PS.S.M.ManualWiredFault + verification: | + + disabled: true + - label: "Step 16: Bring the DUT back into a clean state." - PICS: PS.S.E02 && PS.M.ManualBatChargeFault + PICS: PS.S.E02 && PS.S.M.ManualBatChargeFault verification: | DUT ACTION REQUIRED disabled: true diff --git a/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_1.yaml b/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_1.yaml index 83634fa0c29635..9aba7fca737792 100644 --- a/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_1.yaml @@ -16,6 +16,9 @@ name: 92.4.1. [TC-RVCCLEANM-3.1] On Mode functionality with DUT as Server PICS: - RVCCLEANM.S + - RVCCLEANM.S.F00 + - OO.S.C00.Rsp + - OO.S.C01.Rsp config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_3.yaml b/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_3.yaml index 7fa5f670b18342..bb212c3aaaa362 100644 --- a/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_RVCCLEANM_3_3.yaml @@ -21,6 +21,7 @@ PICS: - RVCCLEANM.S.A0002 - RVCCLEANM.S.A0003 - RVCCLEANM.S.F00 + - OO.S.A4003 config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_RVCRUNM_3_3.yaml b/src/app/tests/suites/certification/Test_TC_RVCRUNM_3_3.yaml index 76b1bec0a3fdc4..2d609c8531c7bb 100644 --- a/src/app/tests/suites/certification/Test_TC_RVCRUNM_3_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_RVCRUNM_3_3.yaml @@ -18,7 +18,10 @@ name: Server PICS: - - RVCRUNM.S + - RVCRUNM.S.A0002 + - RVCRUNM.S.A0003 + - RVCRUNM.S.F00 + - OO.S.A4003 config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_TCCM_2_1.yaml b/src/app/tests/suites/certification/Test_TC_TCCM_2_1.yaml index 02c02462d85a0c..3f283801206c93 100644 --- a/src/app/tests/suites/certification/Test_TC_TCCM_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_TCCM_2_1.yaml @@ -100,7 +100,7 @@ tests: - label: "Step 5: Manually put the device in a state from which it will FAIL to transition to PIXIT.TCCM.MODE_CHANGE_FAIL" - PICS: TCCM.S.M.CAN_MANUALLY_CONTROLLED && TCCM.S.M.CAN_TEST_MODE_FAILURE + PICS: TCCM.S.M.CAN_TEST_MODE_FAILURE && TCCM.S.M.CAN_MANUALLY_CONTROLLED verification: | Manual operation required disabled: true diff --git a/src/app/tests/suites/certification/Test_TC_TCCM_3_1.yaml b/src/app/tests/suites/certification/Test_TC_TCCM_3_1.yaml index 779fbd12afe7ec..d491fe62cb825d 100644 --- a/src/app/tests/suites/certification/Test_TC_TCCM_3_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_TCCM_3_1.yaml @@ -17,6 +17,8 @@ name: 219.3.1. [TC-TCCM-3.1] On Mode functionality with DUT as Server PICS: - TCCM.S.A0003 - TCCM.S.F00 + - OO.S.C00.Rsp + - OO.S.C01.Rsp config: nodeId: 0x12344321 @@ -31,7 +33,9 @@ config: defaultValue: 0 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -48,14 +52,14 @@ tests: arguments: value: nonNull_OnMode_value - - label: "Step 2: TH reads the OnMode attribute from the DUT" + - label: "Step 2: TH reads from the DUT the OnMode attribute." PICS: TCCM.S.A0003 && TCCM.S.F00 command: "readAttribute" attribute: "OnMode" response: saveAs: on_mode_dut - - label: "Step 3a: TH reads the CurrentMode attribute from the DUT" + - label: "Step 3a: TH reads from the DUT the CurrentMode attribute." PICS: TCCM.S.A0001 && TCCM.S.F00 command: "readAttribute" attribute: "CurrentMode" diff --git a/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml b/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml index 2081e133f84876..b2bf2a111ebffd 100644 --- a/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -name: 42.1.1. [TC-TSTAT-1.1] Global attributes with server as DUT +name: 42.1.1. [TC-TSTAT-1.1] Global Attributes with DUT as Server PICS: - TSTAT.S @@ -23,7 +23,9 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -31,7 +33,7 @@ tests: - name: "nodeId" value: nodeId - - label: "Step 2: Read the global attribute: ClusterRevision" + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." command: "readAttribute" attribute: "ClusterRevision" response: @@ -39,7 +41,7 @@ tests: constraints: type: int16u - - label: "Step 3a: Read the global attribute: FeatureMap" + - label: "Step 3a: TH reads from the DUT the FeatureMap attribute." PICS: "!TSTAT.S.F00 && !TSTAT.S.F01 && !TSTAT.S.F02 && !TSTAT.S.F03 && !TSTAT.S.F04 && !TSTAT.S.F05" @@ -127,7 +129,7 @@ tests: type: bitmap32 hasMasksSet: [0x40] - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -136,7 +138,7 @@ tests: type: list contains: [0, 27, 28, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4a: Read the global attribute: AttributeList" + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -146,8 +148,8 @@ tests: contains: [0, 27, 28, 65528, 65529, 65531, 65532, 65533] - label: - "Step 4b: Read the Feature dependent(TSTAT.S.F00(HEAT)) attribute in - AttributeList" + "Step 4b: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) attribute + in AttributeList" PICS: TSTAT.S.F00 command: "readAttribute" attribute: "AttributeList" @@ -156,8 +158,8 @@ tests: type: list contains: [18] - label: - "Step 4c: Read the Feature dependent(TSTAT.S.F01(COOL)) attribute in - AttributeList" + "Step 4c: TH reads the Feature dependent(TSTAT.S.F01(COOL)) attribute + in AttributeList" PICS: TSTAT.S.F01 command: "readAttribute" attribute: "AttributeList" @@ -167,8 +169,8 @@ tests: contains: [17] - label: - "Step 4d: Read the Feature dependent(TSTAT.S.F02(OCC)) attribute in - AttributeList" + "Step 4d: TH reads the Feature dependent(TSTAT.S.F02(OCC)) attribute + in AttributeList" PICS: TSTAT.S.F02 command: "readAttribute" attribute: "AttributeList" @@ -178,7 +180,7 @@ tests: contains: [2] - label: - "Step 4e: Read the Feature dependent(TSTAT.S.F00(HEAT) & + "Step 4e: TH reads the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList" PICS: TSTAT.S.F00 && TSTAT.S.F02 command: "readAttribute" @@ -189,7 +191,7 @@ tests: contains: [20] - label: - "Step 4f: Read the Feature dependent(TSTAT.S.F01(COOL) & + "Step 4f: TH reads the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList" PICS: TSTAT.S.F01 && TSTAT.S.F02 command: "readAttribute" @@ -200,8 +202,8 @@ tests: contains: [19] - label: - "Step 4g: Read the Feature dependent(TSTAT.S.F05(AUTO)) attribute in - AttributeList" + "Step 4g: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) attribute + in AttributeList" PICS: TSTAT.S.F05 command: "readAttribute" attribute: "AttributeList" @@ -211,8 +213,8 @@ tests: contains: [17, 18, 25] - label: - "Step 4h: Read the Feature dependent(TSTAT.S.F03(SCH)) attribute in - AttributeList" + "Step 4h: TH reads the Feature dependent(TSTAT.S.F03(SCH)) attribute + in AttributeList" PICS: TSTAT.S.F03 command: "readAttribute" attribute: "AttributeList" @@ -222,7 +224,7 @@ tests: contains: [32, 33, 34] - label: - "Step 4i: Read the Feature dependent(TSTAT.S.F04(SB)) attribute in + "Step 4i: TH reads the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList" PICS: TSTAT.S.F04 command: "readAttribute" @@ -233,7 +235,7 @@ tests: contains: [52, 53, 54] - label: - "Step 4j: Read the Feature dependent(TSTAT.S.F04(SB) & + "Step 4j: TH reads the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList" PICS: TSTAT.S.F04 && TSTAT.S.F02 command: "readAttribute" @@ -243,7 +245,7 @@ tests: type: list contains: [55, 56, 57] - - label: "Step 4k: Read the optional attribute in AttributeList" + - label: "Step 4k: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0001 command: "readAttribute" attribute: "AttributeList" @@ -252,7 +254,7 @@ tests: type: list contains: [1] - - label: "Step 4l: Read the optional attribute in AttributeList" + - label: "Step 4l: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0009 command: "readAttribute" attribute: "AttributeList" @@ -261,7 +263,7 @@ tests: type: list contains: [9] - - label: "Step 4m: Read the optional attribute in AttributeList" + - label: "Step 4m: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0010 command: "readAttribute" attribute: "AttributeList" @@ -270,7 +272,7 @@ tests: type: list contains: [16] - - label: "Step 4n: Read the optional attribute in AttributeList" + - label: "Step 4n: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A001a command: "readAttribute" attribute: "AttributeList" @@ -279,7 +281,7 @@ tests: type: list contains: [26] - - label: "Step 4o: Read the optional attribute in AttributeList" + - label: "Step 4o: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A001d command: "readAttribute" attribute: "AttributeList" @@ -288,7 +290,7 @@ tests: type: list contains: [29] - - label: "Step 4p: Read the optional attribute in AttributeList" + - label: "Step 4p: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0023 command: "readAttribute" attribute: "AttributeList" @@ -297,7 +299,7 @@ tests: type: list contains: [35] - - label: "Step 4q: Read the optional attribute in AttributeList" + - label: "Step 4q: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0024 command: "readAttribute" attribute: "AttributeList" @@ -306,7 +308,7 @@ tests: type: list contains: [36] - - label: "Step 4r: Read the optional attribute in AttributeList" + - label: "Step 4r: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0025 command: "readAttribute" attribute: "AttributeList" @@ -315,7 +317,7 @@ tests: type: list contains: [37] - - label: "Step 4s: Read the optional attribute in AttributeList" + - label: "Step 4s: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0029 command: "readAttribute" attribute: "AttributeList" @@ -324,7 +326,7 @@ tests: type: list contains: [41] - - label: "Step 4t: Read the optional attribute in AttributeList" + - label: "Step 4t: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0030 command: "readAttribute" attribute: "AttributeList" @@ -333,7 +335,7 @@ tests: type: list contains: [48] - - label: "Step 4u: Read the optional attribute in AttributeList" + - label: "Step 4u: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0031 command: "readAttribute" attribute: "AttributeList" @@ -342,7 +344,7 @@ tests: type: list contains: [49] - - label: "Step 4x: Read the optional attribute in AttributeList" + - label: "Step 4x: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0032 command: "readAttribute" attribute: "AttributeList" @@ -351,7 +353,7 @@ tests: type: list contains: [50] - - label: "Step 5y: Read the optional attribute: AttributeList" + - label: "Step 4y: TH reads the optional attribute: AttributeList" PICS: TSTAT.S.A003a command: "readAttribute" attribute: "AttributeList" @@ -360,7 +362,7 @@ tests: type: list contains: [58] - - label: "Step 4z: Read the optional attribute in AttributeList" + - label: "Step 4z: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0040 command: "readAttribute" attribute: "AttributeList" @@ -369,7 +371,7 @@ tests: type: list contains: [64] - - label: "Step 4A: Read the optional attribute in AttributeList" + - label: "Step 4A: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0041 command: "readAttribute" attribute: "AttributeList" @@ -378,7 +380,7 @@ tests: type: list contains: [65] - - label: "Step 4B: Read the optional attribute in AttributeList" + - label: "Step 4B: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0042 command: "readAttribute" attribute: "AttributeList" @@ -387,7 +389,7 @@ tests: type: list contains: [66] - - label: "Step 4C: Read the optional attribute in AttributeList" + - label: "Step 4C: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0043 command: "readAttribute" attribute: "AttributeList" @@ -396,7 +398,7 @@ tests: type: list contains: [67] - - label: "Step 5D: Read the optional attribute: AttributeList" + - label: "Step 4D: TH reads the optional attribute: AttributeList" PICS: TSTAT.S.A0044 command: "readAttribute" attribute: "AttributeList" @@ -405,7 +407,7 @@ tests: type: list contains: [68] - - label: "Step 4E: Read the optional attribute in AttributeList" + - label: "Step 4E: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0045 command: "readAttribute" attribute: "AttributeList" @@ -414,7 +416,7 @@ tests: type: list contains: [69] - - label: "Step 4F: Read the optional attribute in AttributeList" + - label: "Step 4F: TH reads the optional attribute in AttributeList" PICS: TSTAT.S.A0046 command: "readAttribute" attribute: "AttributeList" @@ -423,7 +425,7 @@ tests: type: list contains: [70] - - label: "Step 5G: Read the optional attribute: AttributeList" + - label: "Step 4g: TH reads the optional attribute: AttributeList" PICS: TSTAT.S.A0047 command: "readAttribute" attribute: "AttributeList" @@ -433,7 +435,7 @@ tests: contains: [71] - label: - "Step 4H: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional + "Step 4H: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList" PICS: TSTAT.S.F00 && TSTAT.S.A0003 command: "readAttribute" @@ -444,7 +446,7 @@ tests: contains: [3] - label: - "Step 4I: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional + "Step 4I: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList" PICS: TSTAT.S.F00 && TSTAT.S.A0004 command: "readAttribute" @@ -455,7 +457,7 @@ tests: contains: [4] - label: - "Step 4J: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional + "Step 4J: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList" PICS: TSTAT.S.F00 && TSTAT.S.A0008 command: "readAttribute" @@ -466,7 +468,7 @@ tests: contains: [8] - label: - "Step 4K: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional + "Step 4K: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList" PICS: TSTAT.S.F00 && TSTAT.S.A0015 command: "readAttribute" @@ -477,7 +479,7 @@ tests: contains: [21] - label: - "Step 4L: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional + "Step 4L: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList" PICS: TSTAT.S.F00 && TSTAT.S.A0016 command: "readAttribute" @@ -488,7 +490,7 @@ tests: contains: [22] - label: - "Step 4M: Read the Feature dependent(TSTAT.S.F01(COOL)) optional + "Step 4M: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList" PICS: TSTAT.S.F01 && TSTAT.S.A0005 command: "readAttribute" @@ -499,7 +501,7 @@ tests: contains: [5] - label: - "Step 4N: Read the Feature dependent(TSTAT.S.F01(COOL)) optional + "Step 4N: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList" PICS: TSTAT.S.F01 && TSTAT.S.A0007 command: "readAttribute" @@ -510,7 +512,7 @@ tests: contains: [6] - label: - "Step 4O: Read the Feature dependent(TSTAT.S.F01(COOL)) optional + "Step 4O: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList" PICS: TSTAT.S.F01 && TSTAT.S.A0007 command: "readAttribute" @@ -521,7 +523,7 @@ tests: contains: [7] - label: - "Step 4P: Read the Feature dependent(TSTAT.S.F01(COOL)) optional + "Step 4P: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList" PICS: TSTAT.S.F01 && TSTAT.S.A0017 command: "readAttribute" @@ -532,7 +534,7 @@ tests: contains: [23] - label: - "Step 4Q: Read the Feature dependent(TSTAT.S.F01(COOL)) optional + "Step 4Q: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList" PICS: TSTAT.S.F01 && TSTAT.S.A0018 command: "readAttribute" @@ -543,7 +545,7 @@ tests: contains: [24] - label: - "Step 4R: Read the Feature dependent(TSTAT.S.F05(AUTO)) optional + "Step 4R: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList" PICS: TSTAT.S.F05 && TSTAT.S.A001e command: "readAttribute" @@ -553,7 +555,16 @@ tests: type: list contains: [30] - - label: "Step 5a: Read the mandatory commands in AcceptedCommandList" + - label: "Step 5: TH reads EventList attribute from the DUT." + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6a: TH reads from the DUT the AcceptedCommandList attribute." command: "readAttribute" attribute: "AcceptedCommandList" response: @@ -562,7 +573,7 @@ tests: contains: [0] - label: - "Step 5b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in + "Step 6b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList" PICS: TSTAT.S.F03 command: "readAttribute" @@ -573,7 +584,7 @@ tests: contains: [1, 2, 3] - label: - "Step 5c: Read the optional (GetRelayStatusLog) command in + "Step 6c: TH reads the optional (GetRelayStatusLog) command in AcceptedCommandList" PICS: TSTAT.S.C04.Rsp command: "readAttribute" @@ -583,7 +594,8 @@ tests: type: list contains: [4] - - label: "Step 6a: Read the global attribute: GeneratedCommandList" + - label: + "Step 7a: TH reads from the DUT the GeneratedCommandList attribute." PICS: " !TSTAT.S.C04.Rsp && !TSTAT.S.C02.Rsp " command: "readAttribute" attribute: "GeneratedCommandList" @@ -593,7 +605,7 @@ tests: type: list - label: - "Step 6b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in + "Step 7b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList" PICS: TSTAT.S.F03 command: "readAttribute" @@ -604,7 +616,7 @@ tests: contains: [0] - label: - "Step 6c: Read optional command (GetRelayStatusLogResponse) in + "Step 7c: TH reads optional command (GetRelayStatusLogResponse) in GeneratedCommandList" PICS: TSTAT.S.C04.Rsp command: "readAttribute" @@ -613,12 +625,3 @@ tests: constraints: type: list contains: [1] - - - label: "Step 7: Read EventList attribute from the DUT." - PICS: PICS_EVENT_LIST_ENABLED - command: "readAttribute" - attribute: "EventList" - response: - value: [] - constraints: - type: list diff --git a/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml b/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml index 36b535a024f6c0..63aba52fe3f3f6 100644 --- a/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml @@ -23,7 +23,7 @@ config: endpoint: 1 tests: - - label: "Step 1: Wait for the commissioned device to be retrieved" + - label: "Step 1: Commission DUT to TH" cluster: "DelayCommands" command: "WaitForCommissionee" arguments: @@ -119,7 +119,7 @@ tests: response: saveAs: UnoccupiedCoolingSetpointValue - - label: "Step 2: Reads mandatory attributes from DUT: LocalTemperature" + - label: "Step 2: TH reads the LocalTemperature attribute from the DUT" command: "readAttribute" attribute: "LocalTemperature" response: @@ -128,7 +128,7 @@ tests: minValue: -27315 maxValue: 32767 - - label: "Step 3: Read OutdoorTemperature attribute from the DUT" + - label: "Step 3: TH reads the OutdoorTemperature attribute from the DUT" PICS: TSTAT.S.A0001 command: "readAttribute" attribute: "OutdoorTemperature" @@ -138,7 +138,7 @@ tests: minValue: -27315 maxValue: 32767 - - label: "Step 4: Read Occupancy attribute from the DUT" + - label: "Step 4: TH reads the Occupancy attribute from the DUT" PICS: TSTAT.S.F02 command: "readAttribute" attribute: "Occupancy" @@ -149,7 +149,7 @@ tests: maxValue: 1 - label: - "Step 5a: Read attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 + "Step 5a: TH reads attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 feature is supported" PICS: TSTAT.S.A0003 && TSTAT.S.A0005 && TSTAT.S.F05 command: "readAttribute" @@ -160,7 +160,7 @@ tests: maxValue: AbsMinCoolSetpointLimitStep5 - MinSetpointDeadBandValue - label: - "Step 5b: Read attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 + "Step 5b: TH reads attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 feature is supported" PICS: TSTAT.S.A0003 && !TSTAT.S.A0005 && TSTAT.S.F05 command: "readAttribute" @@ -170,7 +170,7 @@ tests: type: int16s maxValue: 1575 - - label: "Step 6a: Read attribute AbsMinHeatSetpointLimit from DUT" + - label: "Step 6a: TH reads attribute AbsMinHeatSetpointLimit from DUT" PICS: TSTAT.S.A0003 && !TSTAT.S.F05 command: "readAttribute" attribute: "AbsMinHeatSetpointLimit" @@ -181,7 +181,8 @@ tests: maxValue: 32767 - label: - "Step 6b: Reads mandatory attributes from DUT: AbsMaxHeatSetpointLimit" + "Step 6b: TH reads mandatory attributes from DUT: + AbsMaxHeatSetpointLimit" PICS: TSTAT.S.A0004 command: "readAttribute" attribute: "AbsMaxHeatSetpointLimit" @@ -191,7 +192,8 @@ tests: minValue: -27315 maxValue: 32767 - - label: "Step 7: Read attribute AbsMinCoolSetpointLimit from DUT" + - label: + "Step 7: TH reads the AbsMinCoolSetpointLimit attribute from the DUT" PICS: TSTAT.S.A0005 command: "readAttribute" attribute: "AbsMinCoolSetpointLimit" @@ -201,7 +203,8 @@ tests: minValue: -27315 maxValue: 32767 - - label: "Step 8: Read attribute AbsMaxCoolSetpointLimit from DUT" + - label: + "Step 8: TH reads the AbsMaxCoolSetpointLimit attribute from the DUT" PICS: TSTAT.S.A0006 command: "readAttribute" attribute: "AbsMaxCoolSetpointLimit" @@ -211,7 +214,7 @@ tests: minValue: -27315 maxValue: 32767 - - label: "Step 9: Read PICoolingDemand attribute from the DUT" + - label: "Step 9: TH reads the PICoolingDemand attribute from the DUT" PICS: TSTAT.S.A0007 command: "readAttribute" attribute: "PICoolingDemand" @@ -221,7 +224,7 @@ tests: minValue: 0 maxValue: 100 - - label: "Step 10: Read PIHeatingDemand attribute from the DUT" + - label: "Step 10: TH reads the PIHeatingDemand attribute from the DUT" PICS: TSTAT.S.A0008 command: "readAttribute" attribute: "PIHeatingDemand" @@ -231,17 +234,9 @@ tests: minValue: 0 maxValue: 100 - - label: "Step 11: Read HVACSystemTypeConfiguration attribute from the DUT" - PICS: TSTAT.S.A0009 - command: "readAttribute" - attribute: "HVACSystemTypeConfiguration" - response: - constraints: - type: bitmap8 - minValue: 0 - maxValue: 63 - - - label: "Step 12: Read LocalTemperatureCalibration attribute from the DUT" + - label: + "Step 12: TH reads the LocalTemperatureCalibration attribute from the + DUT" PICS: TSTAT.S.A0010 command: "readAttribute" attribute: "LocalTemperatureCalibration" @@ -251,7 +246,7 @@ tests: minValue: -25 maxValue: 25 - - label: "Step 13a: Read attribute OccupiedCoolingSetpoint from the DUT" + - label: "Step 13a: TH reads attribute OccupiedCoolingSetpoint from the DUT" PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018 command: "readAttribute" attribute: "OccupiedCoolingSetpoint" @@ -261,7 +256,7 @@ tests: minValue: MinCoolSetpointLimitValue maxValue: MaxCoolSetpointLimitValue - - label: "Step 13b: Read attribute OccupiedCoolingSetpoint from the DUT" + - label: "Step 13b: TH reads attribute OccupiedCoolingSetpoint from the DUT" PICS: TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018 command: "readAttribute" attribute: "OccupiedCoolingSetpoint" @@ -272,7 +267,7 @@ tests: maxValue: 3200 - label: - "Step 14a: Read attribute OccupiedHeatingSetpoint if TSTAT.S.F05 + "Step 14a: TH reads attribute OccupiedHeatingSetpoint if TSTAT.S.F05 feature is supported" PICS: TSTAT.S.F05 && TSTAT.S.F00 command: "readAttribute" @@ -283,7 +278,7 @@ tests: minValue: AbsMinCoolSetpointLimitStep5 maxValue: OccupiedCoolingSetpointValue - MinSetpointDeadBandValue - - label: "Step 14b: Read attribute OccupiedHeatingSetpoint from the DUT" + - label: "Step 14b: TH reads attribute OccupiedHeatingSetpoint from the DUT" PICS: TSTAT.S.F00 && !TSTAT.S.F05 command: "readAttribute" attribute: "OccupiedHeatingSetpoint" @@ -293,7 +288,8 @@ tests: minValue: 700 maxValue: 3000 - - label: "Step 15a: Read UnoccupiedCoolingSetpoint attribute from the DUT" + - label: + "Step 15a: TH reads UnoccupiedCoolingSetpoint attribute from the DUT" PICS: TSTAT.S.F05 && TSTAT.S.A0013 command: "readAttribute" attribute: "UnoccupiedCoolingSetpoint" @@ -303,7 +299,8 @@ tests: minValue: AbsMinHeatValue maxValue: AbsMaxHeatValue - - label: "Step 15b: Read UnoccupiedCoolingSetpoint attribute from the DUT" + - label: + "Step 15b: TH reads UnoccupiedCoolingSetpoint attribute from the DUT" PICS: TSTAT.S.F01 && TSTAT.S.F02 && !TSTAT.S.F05 command: "readAttribute" attribute: "UnoccupiedCoolingSetpoint" @@ -313,7 +310,8 @@ tests: minValue: 1600 maxValue: 3200 - - label: "Step 16a: Read UnoccupiedHeatingSetpoint attribute from the DUT" + - label: + "Step 16a: TH reads UnoccupiedHeatingSetpoint attribute from the DUT" PICS: TSTAT.S.F00 && TSTAT.S.F02 && TSTAT.S.F05 && TSTAT.S.A0013 command: "readAttribute" attribute: "UnoccupiedHeatingSetpoint" @@ -324,7 +322,8 @@ tests: maxValue: UnoccupiedCoolingSetpointValue - MinSetpointDeadBandValue - - label: "Step 16b: Read UnoccupiedHeatingSetpoint attribute from the DUT" + - label: + "Step 16b: TH reads UnoccupiedHeatingSetpoint attribute from the DUT" PICS: TSTAT.S.F00 && TSTAT.S.F02 && !TSTAT.S.F05 command: "readAttribute" attribute: "UnoccupiedHeatingSetpoint" @@ -334,7 +333,7 @@ tests: minValue: 700 maxValue: 3000 - - label: "Step 17a: Reads attribute from DUT: MinHeatSetpointLimit" + - label: "Step 17a: TH reads attribute from DUT: MinHeatSetpointLimit" PICS: TSTAT.S.A0015 && TSTAT.S.F05 && TSTAT.S.A0017 && TSTAT.S.A0019 command: "readAttribute" attribute: "MinHeatSetpointLimit" @@ -345,7 +344,7 @@ tests: maxValue: MinCoolSetpointLimitValue - MinSetpointDeadBandValue - label: - "Step 17b: Reads MinHeatSetpointLimit attribute from Server DUT and + "Step 17b: TH reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within range" command: "readAttribute" attribute: "MinHeatSetpointLimit" @@ -358,7 +357,7 @@ tests: #Using hard coded values when optional attributes are not available - label: - "Step 17c: Reads MinHeatSetpointLimit attribute from Server DUT and + "Step 17c: TH reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within range" command: "readAttribute" attribute: "MinHeatSetpointLimit" @@ -369,7 +368,7 @@ tests: minValue: 700 maxValue: 3000 - - label: "Step 18a: Read attribute MaxHeatSetpointLimit from the DUT" + - label: "Step 18a: TH reads attribute MaxHeatSetpointLimit from the DUT" PICS: TSTAT.S.A0016 && !TSTAT.S.F05 command: "readAttribute" attribute: "MaxHeatSetpointLimit" @@ -379,7 +378,7 @@ tests: minValue: 700 maxValue: 3000 - - label: "Step 18b: Reads attribute from DUT: MaxHeatSetpointLimit" + - label: "Step 18b: TH reads attribute from DUT: MaxHeatSetpointLimit" PICS: TSTAT.S.A0016 && TSTAT.S.F05 && TSTAT.S.A0018 command: "readAttribute" attribute: "MaxHeatSetpointLimit" @@ -389,7 +388,7 @@ tests: minValue: 700 maxValue: MaxCoolSetpointLimitValue - MinSetpointDeadBandValue - - label: "Step 19a: Read attribute MinCoolSetpointLimit from DUT" + - label: "Step 19a: TH reads attribute MinCoolSetpointLimit from DUT" PICS: TSTAT.S.A0017 && TSTAT.S.A0018 && TSTAT.S.A0005 command: "readAttribute" attribute: "MinCoolSetpointLimit" @@ -399,7 +398,7 @@ tests: minValue: AbsMinCoolSetpointLimitStep5 maxValue: MaxCoolSetpointLimitValue - - label: "Step 19b: Read attribute MinCoolSetpointLimit from DUT" + - label: "Step 19b: TH reads attribute MinCoolSetpointLimit from DUT" PICS: TSTAT.S.A0017 && !TSTAT.S.A0018 && !TSTAT.S.A0005 command: "readAttribute" attribute: "MinCoolSetpointLimit" @@ -409,7 +408,7 @@ tests: minValue: 1600 maxValue: 3200 - - label: "Step 20: Read attribute MaxCoolSetpointLimit from DUT" + - label: "Step 20: TH reads the MaxCoolSetpointLimit attribute from the DUT" PICS: TSTAT.S.A0018 && TSTAT.S.A0006 && TSTAT.S.A0017 command: "readAttribute" attribute: "MaxCoolSetpointLimit" @@ -419,7 +418,7 @@ tests: minValue: MinCoolSetpointLimitValue maxValue: AbsMaxCoolSetpointLimitStep6 - - label: "Step 21: Read attribute MinSetpointDeadBand from DUT" + - label: "Step 21: TH reads the MinSetpointDeadBand attribute from the DUT" PICS: TSTAT.S.F05 command: "readAttribute" attribute: "MinSetpointDeadBand" @@ -429,7 +428,7 @@ tests: minValue: 0 maxValue: 25 - - label: "Step 22: Read RemoteSensing attribute from the DUT" + - label: "Step 22: TH reads the RemoteSensing attribute from the DUT" PICS: TSTAT.S.A001a command: "readAttribute" attribute: "RemoteSensing" @@ -439,7 +438,9 @@ tests: minValue: 0 maxValue: 7 - - label: "Step 23: Read attribute ControlSequenceOfOperation from DUT" + - label: + "Step 23: TH reads the ControlSequenceOfOperation attribute from the + DUT" PICS: TSTAT.S.A001b command: "readAttribute" attribute: "ControlSequenceOfOperation" @@ -449,7 +450,7 @@ tests: minValue: 0 maxValue: 5 - - label: "Step 24: Read attribute SystemMode from DUT" + - label: "Step 24: TH reads the SystemMode attribute from the DUT" PICS: TSTAT.S.A001c command: "readAttribute" attribute: "SystemMode" @@ -459,7 +460,8 @@ tests: minValue: 0 maxValue: 9 - - label: "Step 26: Read ThermostatRunningMode attribute from the DUT" + - label: + "Step 26: TH reads the ThermostatRunningMode attribute from the DUT" PICS: TSTAT.S.A001e command: "readAttribute" attribute: "ThermostatRunningMode" @@ -469,9 +471,7 @@ tests: minValue: 0 maxValue: 9 - - label: - "Step 27: Reads constraints of optional attributes from DUT: - StartOfWeek" + - label: "Step 27: TH reads the StartOfWeek attribute from the DUT" PICS: TSTAT.S.F03 command: "readAttribute" attribute: "StartOfWeek" @@ -482,8 +482,8 @@ tests: maxValue: 6 - label: - "Step 28: Reads optional attributes from DUT: - NumberOfWeeklyTransitions" + "Step 28: TH reads the NumberOfWeeklyTransitions attribute from the + DUT" PICS: TSTAT.S.F03 command: "readAttribute" attribute: "NumberOfWeeklyTransitions" @@ -494,7 +494,7 @@ tests: maxValue: 255 - label: - "Step 29: Reads optional attributes from DUT: NumberOfDailyTransitions" + "Step 29: TH reads the NumberOfDailyTransitions attribute from the DUT" PICS: TSTAT.S.F03 command: "readAttribute" attribute: "NumberOfDailyTransitions" @@ -504,7 +504,8 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 30: Read TemperatureSetpointHold attribute from the DUT" + - label: + "Step 30: TH reads the TemperatureSetpointHold attribute from the DUT" PICS: TSTAT.S.A0023 command: "readAttribute" attribute: "TemperatureSetpointHold" @@ -515,7 +516,8 @@ tests: maxValue: 1 - label: - "Step 31: Read TemperatureSetpointHoldDuration attribute from the DUT" + "Step 31: TH reads the TemperatureSetpointHoldDuration attribute from + the DUT" PICS: TSTAT.S.A0024 command: "readAttribute" attribute: "TemperatureSetpointHoldDuration" @@ -526,8 +528,8 @@ tests: maxValue: 1440 - label: - "Step 32: Read ThermostatProgrammingOperationMode attribute from the - DUT" + "Step 32: TH reads the ThermostatProgrammingOperationMode attribute + from the DUT" PICS: TSTAT.S.A0025 command: "readAttribute" attribute: "ThermostatProgrammingOperationMode" @@ -537,7 +539,8 @@ tests: minValue: 0 maxValue: 7 - - label: "Step 33: Read ThermostatRunningState attribute from the DUT" + - label: + "Step 33: TH reads the ThermostatRunningState attribute from the DUT" PICS: TSTAT.S.A0029 command: "readAttribute" attribute: "ThermostatRunningState" @@ -547,7 +550,7 @@ tests: minValue: 0 maxValue: 127 - - label: "Step 34: Read SetpointChangeSource attribute from the DUT" + - label: "Step 34: TH reads the SetpointChangeSource attribute from the DUT" PICS: TSTAT.S.A0030 command: "readAttribute" attribute: "SetpointChangeSource" @@ -557,7 +560,7 @@ tests: minValue: 0 maxValue: 2 - - label: "Step 35: Read SetpointChangeAmount attribute from the DUT" + - label: "Step 35: TH reads the SetpointChangeAmount attribute from the DUT" PICS: TSTAT.S.A0031 command: "readAttribute" attribute: "SetpointChangeAmount" @@ -568,7 +571,8 @@ tests: maxValue: 32767 - label: - "Step 36: Read SetpointChangeSourceTimestamp attribute from the DUT" + "Step 36: TH reads the SetpointChangeSourceTimestamp attribute from + the DUT" PICS: TSTAT.S.A0032 command: "readAttribute" attribute: "SetpointChangeSourceTimestamp" @@ -576,7 +580,7 @@ tests: constraints: type: epoch_s - - label: "Step 37: Read OccupiedSetback attribute from the DUT" + - label: "Step 37: TH reads the OccupiedSetback attribute from the DUT" PICS: TSTAT.S.F04 command: "readAttribute" attribute: "OccupiedSetback" @@ -586,7 +590,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 38: Read OccupiedSetbackMin attribute from the DUT" + - label: "Step 38: TH reads the OccupiedSetbackMin attribute from the DUT" PICS: TSTAT.S.F04 command: "readAttribute" attribute: "OccupiedSetbackMin" @@ -596,7 +600,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 39: Read OccupiedSetbackMax attribute from the DUT" + - label: "Step 39: TH reads the OccupiedSetbackMax attribute from the DUT" PICS: TSTAT.S.F04 command: "readAttribute" attribute: "OccupiedSetbackMax" @@ -606,7 +610,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 40: Read UnoccupiedSetback attribute from the DUT" + - label: "Step 40: TH reads the UnoccupiedSetback attribute from the DUT" PICS: TSTAT.S.F02 && TSTAT.S.F04 command: "readAttribute" attribute: "UnoccupiedSetback" @@ -616,7 +620,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 41: Read UnoccupiedSetbackMin attribute from the DUT" + - label: "Step 41: TH reads the UnoccupiedSetbackMin attribute from the DUT" PICS: TSTAT.S.F02 && TSTAT.S.F04 command: "readAttribute" attribute: "UnoccupiedSetbackMin" @@ -626,7 +630,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 42: Read UnoccupiedSetbackMax attribute from the DUT" + - label: "Step 42: TH reads the UnoccupiedSetbackMax attribute from the DUT" PICS: TSTAT.S.F02 && TSTAT.S.F04 command: "readAttribute" attribute: "UnoccupiedSetbackMax" @@ -636,7 +640,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 43: Read EmergencyHeatDelta attribute from the DUT" + - label: "Step 43: TH reads the EmergencyHeatDelta attribute from the DUT" PICS: TSTAT.S.A003a command: "readAttribute" attribute: "EmergencyHeatDelta" @@ -646,7 +650,7 @@ tests: minValue: 0 maxValue: 255 - - label: "Step 44: Read ACType attribute from the DUT" + - label: "Step 44: TH reads the ACType attribute from the DUT" PICS: TSTAT.S.A0040 command: "readAttribute" attribute: "ACType" @@ -656,7 +660,7 @@ tests: minValue: 0 maxValue: 4 - - label: "Step 45: Read ACCapacity attribute from the DUT" + - label: "Step 45: TH reads the ACCapacity attribute from the DUT" PICS: TSTAT.S.A0041 command: "readAttribute" attribute: "ACCapacity" @@ -666,7 +670,7 @@ tests: minValue: 0 maxValue: 65535 - - label: "Step 46: Read ACRefrigerantType attribute from the DUT" + - label: "Step 46: TH reads the ACRefrigerantType attribute from the DUT" PICS: TSTAT.S.A0042 command: "readAttribute" attribute: "ACRefrigerantType" @@ -676,7 +680,7 @@ tests: minValue: 0 maxValue: 3 - - label: "Step 47: Read ACCompressorType attribute from the DUT" + - label: "Step 47: TH reads the ACCompressorType attribute from the DUT" PICS: TSTAT.S.A0043 command: "readAttribute" attribute: "ACCompressorType" @@ -686,7 +690,7 @@ tests: minValue: 0 maxValue: 3 - - label: "Step 48: Read ACErrorCode attribute from the DUT" + - label: "Step 48: TH reads the ACErrorCode attribute from the DUT" PICS: TSTAT.S.A0044 command: "readAttribute" attribute: "ACErrorCode" @@ -694,7 +698,7 @@ tests: constraints: type: bitmap32 - - label: "Step 49: Read ACLouverPosition attribute from the DUT" + - label: "Step 49: TH reads the ACLouverPosition attribute from the DUT" PICS: TSTAT.S.A0045 command: "readAttribute" attribute: "ACLouverPosition" @@ -704,7 +708,7 @@ tests: minValue: 1 maxValue: 5 - - label: "Step 50: Read ACCoilTemperature attribute from the DUT" + - label: "Step 50: TH reads the ACCoilTemperature attribute from the DUT" PICS: TSTAT.S.A0046 command: "readAttribute" attribute: "ACCoilTemperature" @@ -714,7 +718,7 @@ tests: minValue: -27315 maxValue: 32767 - - label: "Step 51: Read ACCapacityFormat attribute from the DUT" + - label: "Step 51: TH reads the ACCapacityFormat attribute from the DUT" PICS: TSTAT.S.A0047 command: "readAttribute" attribute: "ACCapacityformat" diff --git a/src/app/tests/suites/certification/Test_TC_TSUIC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_TSUIC_1_1.yaml index 4ed2aee6616993..066267b9117be0 100644 --- a/src/app/tests/suites/certification/Test_TC_TSUIC_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_TSUIC_1_1.yaml @@ -76,26 +76,26 @@ tests: type: list contains: [2] - - label: "Step 5: TH reads from the DUT the AcceptedCommandList attribute." + - label: "Step 5: TH reads from the DUT the EventList attribute." + PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" - attribute: "AcceptedCommandList" + attribute: "EventList" response: value: [] constraints: type: list - - label: "Step 6: TH reads from the DUT the GeneratedCommandList attribute." + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." command: "readAttribute" - attribute: "GeneratedCommandList" + attribute: "AcceptedCommandList" response: value: [] constraints: type: list - - label: "Step 7: TH reads from the DUT the EventList attribute." - PICS: PICS_EVENT_LIST_ENABLED + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." command: "readAttribute" - attribute: "EventList" + attribute: "GeneratedCommandList" response: value: [] constraints: diff --git a/src/app/tests/suites/certification/Test_TC_WNCV_3_1.yaml b/src/app/tests/suites/certification/Test_TC_WNCV_3_1.yaml index 9a7da4b4354736..be641bbb68ecec 100644 --- a/src/app/tests/suites/certification/Test_TC_WNCV_3_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_WNCV_3_1.yaml @@ -28,10 +28,10 @@ config: Step1bWaitTime: type: int16u - defaultValue: 10000 + defaultValue: 5000 Step2bWaitTime: type: int16u - defaultValue: 500 + defaultValue: 200 Step2eWaitTime: type: int16u defaultValue: 1000 @@ -171,79 +171,17 @@ tests: ### Depends on the FeatureMap # The value of bit 0..1 must be 01b & if (LF) value of bit 2..3 must be 01b else 00b & if (TL) value of bit 4..5 must be 01b else 00b # Only 3 possibilities are possible here : 05h = 5, 11h = 17 or 15h = 21 then check a range for simplicity [5 - 21] - - label: "Step 3a1: TH reads OperationalStatus attribute's bit 0..1" + - label: "Step 3a: TH reads OperationalStatus attribute from DUT" PICS: WNCV.S.A000a command: "readAttribute" attribute: "OperationalStatus" response: - saveAs: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksSet: [0x1] - hasMasksClear: [0x2] - - - label: - "Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do - the bits checks in upcoming OperationalStatus read steps." - PICS: WNCV.S.A000a - cluster: "Unit Testing" - command: "writeAttribute" - attribute: "bitmap8" - arguments: - value: OperationalStatusValue - - - label: - "Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF))" - PICS: WNCV.S.A000a && WNCV.S.F00 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksSet: [0x4] - hasMasksClear: [0x8] - - - label: - "Step 3a4: TH check OperationalStatus value bit 2..3 (WNCV.S.F00(LF))" - PICS: WNCV.S.A000a && !WNCV.S.F00 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksClear: [0x4, 0x8] - - - label: - "Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))" - PICS: WNCV.S.A000a && WNCV.S.F01 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksSet: [0x10] - hasMasksClear: [0x20] - - - label: - "Step 3a6: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))" - PICS: WNCV.S.A000a && !WNCV.S.F01 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue constraints: type: bitmap8 - hasMasksClear: [0x10, 0x20] + anyOf: [5, 17, 21] ### Depending on the DUT specs we might prefer a arguments here - - label: "Step 3a7: DUT updates its attributes" + - label: "Step 3a: DUT updates its attributes" cluster: "DelayCommands" command: "WaitForMs" arguments: diff --git a/src/app/tests/suites/certification/Test_TC_WNCV_3_2.yaml b/src/app/tests/suites/certification/Test_TC_WNCV_3_2.yaml index 020477537210c1..822a15d6a04cac 100644 --- a/src/app/tests/suites/certification/Test_TC_WNCV_3_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_WNCV_3_2.yaml @@ -28,10 +28,10 @@ config: Step1bWaitTime: type: int16u - defaultValue: 10000 + defaultValue: 5000 Step2bWaitTime: type: int16u - defaultValue: 500 + defaultValue: 200 Step2eWaitTime: type: int16u defaultValue: 1000 @@ -40,7 +40,7 @@ config: defaultValue: 1000 Step5aWaitTime: type: int16u - defaultValue: 500 + defaultValue: 200 tests: - label: "Step 0: Wait for the commissioned device to be retrieved" @@ -171,79 +171,17 @@ tests: ### Depends on the FeatureMap # The value of bit 0..1 must be 10b & if (LF) value of bit 2..3 must be 10b else 00b & if (TL) value of bit 4..5 must be 10b else 00b # Only 3 possibilities are possible here : 0Ah = 10, 22h = 34 or 2Ah = 42 then check a range for simplicity [10 - 42] - - label: "Step 3a1: TH reads OperationalStatus attribute's bit 0..1" + - label: "Step 3a: TH reads OperationalStatus attribute from DUT" PICS: WNCV.S.A000a command: "readAttribute" attribute: "OperationalStatus" response: - saveAs: OperationalStatusValue constraints: type: bitmap8 - hasMasksSet: [0x2] - hasMasksClear: [0x1] - - - label: - "Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do - the bits checks in upcoming OperationalStatus read steps." - PICS: WNCV.S.A000a - cluster: "Unit Testing" - command: "writeAttribute" - attribute: "bitmap8" - arguments: - value: OperationalStatusValue - - - label: - "Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF))" - PICS: WNCV.S.A000a && WNCV.S.F00 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksSet: [0x8] - hasMasksClear: [0x4] - - - label: - "Step 3a4: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF))" - PICS: WNCV.S.A000a && !WNCV.S.F00 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksClear: [0x4, 0x8] - - - label: - "Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))" - PICS: WNCV.S.A000a && WNCV.S.F01 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksSet: [0x20] - hasMasksClear: [0x10] - - - label: - "Step 3a6: TH chesks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))" - PICS: WNCV.S.A000a && !WNCV.S.F01 - cluster: "Unit Testing" - command: "readAttribute" - attribute: "bitmap8" - response: - value: OperationalStatusValue - constraints: - type: bitmap8 - hasMasksClear: [0x10, 0x20] + anyOf: [10, 34, 42] ### Depending on the DUT specs we might prefer a arguments here - - label: "Step 3a7: DUT updates its attributes" + - label: "Step 3a: DUT updates its attributes" cluster: "DelayCommands" command: "WaitForMs" arguments: diff --git a/src/app/tests/suites/certification/Test_TC_WNCV_3_4.yaml b/src/app/tests/suites/certification/Test_TC_WNCV_3_4.yaml index c93ce3056311bd..af2a1c0f08e03c 100644 --- a/src/app/tests/suites/certification/Test_TC_WNCV_3_4.yaml +++ b/src/app/tests/suites/certification/Test_TC_WNCV_3_4.yaml @@ -18,6 +18,7 @@ name: PICS: - WNCV.S + - WNCV.S.F02 | WNCV.S.F04 config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/Test_TC_WNCV_3_5.yaml b/src/app/tests/suites/certification/Test_TC_WNCV_3_5.yaml index b1ab57e8fb81ac..71f9f5c7a4ba18 100644 --- a/src/app/tests/suites/certification/Test_TC_WNCV_3_5.yaml +++ b/src/app/tests/suites/certification/Test_TC_WNCV_3_5.yaml @@ -15,8 +15,10 @@ name: Window Covering [TC-WNCV-3.5] DownOrClose command Long-Run Verification [DUT as Server] + PICS: - WNCV.S + - WNCV.S.F02 | WNCV.S.F04 config: nodeId: 0x12344321 diff --git a/src/app/tests/suites/certification/ci-pics-values b/src/app/tests/suites/certification/ci-pics-values index d2082e9ee6655c..9bba640d4218e2 100644 --- a/src/app/tests/suites/certification/ci-pics-values +++ b/src/app/tests/suites/certification/ci-pics-values @@ -337,6 +337,7 @@ DISHM.S.C01.Tx=1 #Manual controllable DISHM.S.M.CAN_TEST_MODE_FAILURE=1 +DISHM.S.M.CAN_MANUALLY_CONTROLLED=0 #PIXIT PIXIT.DISHM.MODE_CHANGE_FAIL=1 @@ -750,6 +751,7 @@ PIXIT.LWM.MODE_CHANGE_FAIL=1 PIXIT.LWM.MODE_CHANGE_OK=1 LWM.S.M.CAN_TEST_MODE_FAILURE=1 +LWM.S.M.CAN_MANUALLY_CONTROLLED=1 # LAUNDRY DRYER MODE CLUSTER @@ -768,6 +770,7 @@ DRYERCTRL.S.F00=1 DRYERCTRL.S.M.ManuallyControlled=0 # Time Format Localization Cluster +LTIME.S.F00=1 LTIME.S=1 LTIME.S.A0000=1 LTIME.S.A0001=1 @@ -1032,9 +1035,9 @@ PS.S.F00=0 PS.S.F01=1 PS.S.F02=0 PS.S.F03=0 -PS.M.ManualWiredFault=1 -PS.M.ManualBatFault=1 -PS.M.ManualBatChargeFault=1 +PS.S.M.ManualWiredFault=1 +PS.S.M.ManualBatFault=1 +PS.S.M.ManualBatChargeFault=1 PS.C=0 PS.C.AM-READ=0 @@ -1218,6 +1221,19 @@ ACT.C.C09.Tx=0 ACT.C.C0a.Tx=0 ACT.C.C0b.Tx=0 +ACT.S.C00.Rsp=1 +ACT.S.C01.Rsp=0 +ACT.S.C02.Rsp=0 +ACT.S.C03.Rsp=0 +ACT.S.C04.Rsp=0 +ACT.S.C05.Rsp=0 +ACT.S.C06.Rsp=0 +ACT.S.C07.Rsp=0 +ACT.S.C08.Rsp=0 +ACT.S.C09.Rsp=0 +ACT.S.C0a.Rsp=0 +ACT.S.C0b.Rsp=0 + # Boolean State Cluster BOOL.S=1 BOOL.S.A0000=1 @@ -1696,6 +1712,9 @@ CNET.S.A0004=1 CNET.S.A0005=1 CNET.S.A0006=1 CNET.S.A0007=1 +CNET.S.A0008=0 +CNET.S.A0009=0 +CNET.S.A000A=0 # Features CNET.S.F00=0 @@ -2153,7 +2172,7 @@ HEPAFREMON.S.C00.Rsp=1 ACFREMON.S=1 ACFREMON.C=0 ACFREMON.S.F00=1 -ACFREMON.S.F01=1 +ACFREMON.S.F01=0 ACFREMON.S.F02=1 ACFREMON.S.A0000=1 ACFREMON.S.A0001=1 @@ -2501,6 +2520,7 @@ TCCM.S.C00.Rsp=1 TCCM.S.C01.Tx=1 TCCM.S.M.CAN_TEST_MODE_FAILURE=1 +TCCM.S.M.CAN_MANUALLY_CONTROLLED=0 #PIXIT PIXIT.TCCM.MODE_CHANGE_FAIL=1 diff --git a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h index fc151d4456c50c..2cd96b5a45995d 100644 --- a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h +++ b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h @@ -2520,32 +2520,32 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: TH1 commissions DUT using admin node ID N1\n"); + err = TestStep1Th1CommissionsDutUsingAdminNodeIdN1_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads SubjectsPerAccessControlEntry attribute from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH1 reads DUT Endpoint 0 AccessControl cluster SubjectsPerAccessControlEntry attribute\n"); if (ShouldSkip("ACL.S.A0002")) { NextTest(); return; } - err = TestStep2ThReadsSubjectsPerAccessControlEntryAttributeFromDut_1(); + err = TestStep2Th1ReadsDutEndpoint0AccessControlClusterSubjectsPerAccessControlEntryAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: TH reads TargetsPerAccessControlEntry attribute from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: TH1 reads DUT Endpoint 0 AccessControl cluster TargetsPerAccessControlEntry attribute\n"); if (ShouldSkip("ACL.S.A0003")) { NextTest(); return; } - err = TestStep3ThReadsTargetsPerAccessControlEntryAttributeFromDut_2(); + err = TestStep3Th1ReadsDutEndpoint0AccessControlClusterTargetsPerAccessControlEntryAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4: TH reads AccessControlEntriesPerFabric attribute from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4: TH1 reads DUT Endpoint 0 AccessControl cluster AccessControlEntriesPerFabric attribute\n"); if (ShouldSkip("ACL.S.A0004")) { NextTest(); return; } - err = TestStep4ThReadsAccessControlEntriesPerFabricAttributeFromDut_3(); + err = TestStep4Th1ReadsDutEndpoint0AccessControlClusterAccessControlEntriesPerFabricAttribute_3(); break; } @@ -2587,7 +2587,7 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1Th1CommissionsDutUsingAdminNodeIdN1_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -2595,7 +2595,7 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ThReadsSubjectsPerAccessControlEntryAttributeFromDut_1() + CHIP_ERROR TestStep2Th1ReadsDutEndpoint0AccessControlClusterSubjectsPerAccessControlEntryAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -2604,9 +2604,9 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { [cluster readAttributeSubjectsPerAccessControlEntryWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: TH reads SubjectsPerAccessControlEntry attribute from DUT: Error: %@", err); + NSLog(@"Step 2: TH1 reads DUT Endpoint 0 AccessControl cluster SubjectsPerAccessControlEntry attribute: Error: %@", err); } else { - NSLog(@"Step 2: TH reads SubjectsPerAccessControlEntry attribute from DUT: Success"); + NSLog(@"Step 2: TH1 reads DUT Endpoint 0 AccessControl cluster SubjectsPerAccessControlEntry attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -2621,7 +2621,7 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3ThReadsTargetsPerAccessControlEntryAttributeFromDut_2() + CHIP_ERROR TestStep3Th1ReadsDutEndpoint0AccessControlClusterTargetsPerAccessControlEntryAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -2630,9 +2630,9 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { [cluster readAttributeTargetsPerAccessControlEntryWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3: TH reads TargetsPerAccessControlEntry attribute from DUT: Error: %@", err); + NSLog(@"Step 3: TH1 reads DUT Endpoint 0 AccessControl cluster TargetsPerAccessControlEntry attribute: Error: %@", err); } else { - NSLog(@"Step 3: TH reads TargetsPerAccessControlEntry attribute from DUT: Success"); + NSLog(@"Step 3: TH1 reads DUT Endpoint 0 AccessControl cluster TargetsPerAccessControlEntry attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -2647,7 +2647,7 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ThReadsAccessControlEntriesPerFabricAttributeFromDut_3() + CHIP_ERROR TestStep4Th1ReadsDutEndpoint0AccessControlClusterAccessControlEntriesPerFabricAttribute_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -2656,15 +2656,15 @@ class Test_TC_ACL_2_1 : public TestCommandBridge { [cluster readAttributeAccessControlEntriesPerFabricWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4: TH reads AccessControlEntriesPerFabric attribute from DUT: Error: %@", err); + NSLog(@"Step 4: TH1 reads DUT Endpoint 0 AccessControl cluster AccessControlEntriesPerFabric attribute: Error: %@", err); } else { - NSLog(@"Step 4: TH reads AccessControlEntriesPerFabric attribute from DUT: Success"); + NSLog(@"Step 4: TH1 reads DUT Endpoint 0 AccessControl cluster AccessControlEntriesPerFabric attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); VerifyOrReturn(CheckConstraintType("accessControlEntriesPerFabric", "int16u", "int16u")); - VerifyOrReturn(CheckConstraintMinValue("accessControlEntriesPerFabric", [value unsignedShortValue], 3U)); + VerifyOrReturn(CheckConstraintMinValue("accessControlEntriesPerFabric", [value unsignedShortValue], 4U)); VerifyOrReturn(CheckConstraintMaxValue("accessControlEntriesPerFabric", [value unsignedShortValue], 65535U)); NextTest(); @@ -2725,8 +2725,8 @@ class Test_TC_ACL_2_3 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: TH1 commissions DUT using admin node ID N1\n"); + err = TestStep1Th1CommissionsDutUsingAdminNodeIdN1_0(); break; case 1: ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH1 reads DUT Endpoint 0 OperationalCredentials cluster CurrentFabricIndex attribute\n"); @@ -2974,7 +2974,7 @@ class Test_TC_ACL_2_3 : public TestCommandBridge { chip::Optional mDBadNone; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1Th1CommissionsDutUsingAdminNodeIdN1_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -6441,35 +6441,35 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Commission DUT to TH (can be skipped if done in a preceding test).\n"); + err = TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); - err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the ClusterRevision attribute\n"); + err = TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: Read the global attribute: FeatureMap\n"); - err = TestStep3ReadTheGlobalAttributeFeatureMap_2(); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: TH reads from the DUT the FeatureMap attribute\n"); + err = TestStep3ThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4ReadTheGlobalAttributeAttributeList_3(); + err = TestStep4ThReadsFromTheDutTheAttributeListAttribute_3(); break; case 4: - ChipLogProgress(chipTool, " ***** Test Step 4 : Step 4: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 4 : Step 4: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4ReadTheGlobalAttributeAttributeList_4(); + err = TestStep4ThReadsFromTheDutTheAttributeListAttribute_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Step 5: Read the global attribute: EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 5 : Step 5: TH reads from the DUT the EventList attribute\n"); if (ShouldSkip("BOOL.S.E00 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; @@ -6477,7 +6477,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { NextTest(); return; case 6: - ChipLogProgress(chipTool, " ***** Test Step 6 : Step 5: Read the global attribute: EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 6 : Step 5: TH reads from the DUT the EventList attribute\n"); if (ShouldSkip(" !BOOL.S.E00 && PICS_EVENT_LIST_ENABLED ")) { NextTest(); return; @@ -6485,12 +6485,12 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { NextTest(); return; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 6: Read the global attribute: AcceptedCommandList\n"); - err = TestStep6ReadTheGlobalAttributeAcceptedCommandList_7(); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 6: TH reads from the DUT the AcceptedCommandList attribute\n"); + err = TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_7(); break; case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 7: Read the global attribute: GeneratedCommandList\n"); - err = TestStep7ReadTheGlobalAttributeGeneratedCommandList_8(); + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 7: TH reads from the DUT the GeneratedCommandList attribute\n"); + err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_8(); break; } @@ -6547,7 +6547,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -6555,7 +6555,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -6564,9 +6564,9 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute: Error: %@", err); } else { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -6583,7 +6583,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3ReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3ThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -6592,9 +6592,9 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3: TH reads from the DUT the FeatureMap attribute: Error: %@", err); } else { - NSLog(@"Step 3: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3: TH reads from the DUT the FeatureMap attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -6611,7 +6611,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheGlobalAttributeAttributeList_3() + CHIP_ERROR TestStep4ThReadsFromTheDutTheAttributeListAttribute_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -6620,9 +6620,9 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -6642,7 +6642,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheGlobalAttributeAttributeList_4() + CHIP_ERROR TestStep4ThReadsFromTheDutTheAttributeListAttribute_4() { MTRBaseDevice * device = GetDevice("alpha"); @@ -6651,9 +6651,9 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -6672,7 +6672,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ReadTheGlobalAttributeAcceptedCommandList_7() + CHIP_ERROR TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -6681,9 +6681,9 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6: Read the global attribute: AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6: TH reads from the DUT the AcceptedCommandList attribute: Error: %@", err); } else { - NSLog(@"Step 6: Read the global attribute: AcceptedCommandList: Success"); + NSLog(@"Step 6: TH reads from the DUT the AcceptedCommandList attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -6700,7 +6700,7 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7ReadTheGlobalAttributeGeneratedCommandList_8() + CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -6709,9 +6709,9 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 7: Read the global attribute: GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute: Error: %@", err); } else { - NSLog(@"Step 7: Read the global attribute: GeneratedCommandList: Success"); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -7028,36 +7028,52 @@ class Test_TC_BRBINFO_1_1 : public TestCommandBridge { err = TestStep4oThReadsOptionalAttributeUniqueIDInAttributeList_18(); break; case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 5a: TH reads optional event(StartUp) in EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 4p: TH reads optional attribute(ProductAppearance) in AttributeList\n"); + if (ShouldSkip("BRBINFO.S.A0014")) { + NextTest(); + return; + } + err = TestStep4pThReadsOptionalAttributeProductAppearanceInAttributeList_19(); + break; + case 20: + ChipLogProgress(chipTool, " ***** Test Step 20 : Step 5a: TH reads from the DUT the EventList attribute\n"); + if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { + NextTest(); + return; + } + NextTest(); + return; + case 21: + ChipLogProgress(chipTool, " ***** Test Step 21 : Step 5b: TH reads optional event(StartUp) in EventList\n"); if (ShouldSkip("BRBINFO.S.E00 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 20: - ChipLogProgress(chipTool, " ***** Test Step 20 : Step 5b: TH reads optional attribute(ShutDown) in EventList\n"); + case 22: + ChipLogProgress(chipTool, " ***** Test Step 22 : Step 5c: TH reads optional attribute(ShutDown) in EventList\n"); if (ShouldSkip("BRBINFO.S.E01 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 21: - ChipLogProgress(chipTool, " ***** Test Step 21 : Step 5c: TH reads optional attribute(Leave) in EventList\n"); + case 23: + ChipLogProgress(chipTool, " ***** Test Step 23 : Step 5d TH reads optional attribute(Leave) in EventList\n"); if (ShouldSkip("BRBINFO.S.E02 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 22: - ChipLogProgress(chipTool, " ***** Test Step 22 : Step 6: TH reads AcceptedCommandList from DUT\n"); - err = TestStep6ThReadsAcceptedCommandListFromDut_22(); + case 24: + ChipLogProgress(chipTool, " ***** Test Step 24 : Step 6: TH reads AcceptedCommandList from DUT\n"); + err = TestStep6ThReadsAcceptedCommandListFromDut_24(); break; - case 23: - ChipLogProgress(chipTool, " ***** Test Step 23 : Step 7: TH1 reads GeneratedCommandList from DUT\n"); - err = TestStep7Th1ReadsGeneratedCommandListFromDut_23(); + case 25: + ChipLogProgress(chipTool, " ***** Test Step 25 : Step 7: TH1 reads GeneratedCommandList from DUT\n"); + err = TestStep7Th1ReadsGeneratedCommandListFromDut_25(); break; } @@ -7142,6 +7158,12 @@ class Test_TC_BRBINFO_1_1 : public TestCommandBridge { case 23: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 24: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 25: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -7152,7 +7174,7 @@ class Test_TC_BRBINFO_1_1 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 24; + const uint16_t mTestCount = 26; chip::Optional mNodeId; chip::Optional mCluster; @@ -7634,7 +7656,32 @@ class Test_TC_BRBINFO_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ThReadsAcceptedCommandListFromDut_22() + CHIP_ERROR TestStep4pThReadsOptionalAttributeProductAppearanceInAttributeList_19() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterBridgedDeviceBasicInformation alloc] initWithDevice:device endpointID:@(3) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 4p: TH reads optional attribute(ProductAppearance) in AttributeList: Error: %@", err); + } else { + NSLog(@"Step 4p: TH reads optional attribute(ProductAppearance) in AttributeList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("attributeList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 20UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6ThReadsAcceptedCommandListFromDut_24() { MTRBaseDevice * device = GetDevice("alpha"); @@ -7662,7 +7709,7 @@ class Test_TC_BRBINFO_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7Th1ReadsGeneratedCommandListFromDut_23() + CHIP_ERROR TestStep7Th1ReadsGeneratedCommandListFromDut_25() { MTRBaseDevice * device = GetDevice("alpha"); @@ -7736,20 +7783,20 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); - err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the ClusterRevision attribute.\n"); + err = TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: Read the global attribute: FeatureMap\n"); - err = TestStep3ReadTheGlobalAttributeFeatureMap_2(); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: TH reads from the DUT the FeatureMap attribute.\n"); + err = TestStep3ThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4a: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_3(); + err = TestStep4aThReadsFromTheDutTheAttributeListAttribute_3(); break; case 4: ChipLogProgress(chipTool, " ***** Test Step 4 : Step 4a: Read the global attribute: AttributeList\n"); @@ -7769,19 +7816,111 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { break; case 6: ChipLogProgress(chipTool, " ***** Test Step 6 : Step 5: TH reads EventList attribute from DUT\n"); - if (ShouldSkip("PICS_USER_PROMPT && PICS_EVENT_LIST_ENABLED")) { + if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep5ThReadsEventListAttributeFromDut_6(); - break; + NextTest(); + return; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 6: Read the global attribute: AcceptedCommandList\n"); - err = TestStep6ReadTheGlobalAttributeAcceptedCommandList_7(); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 6a: TH Read the optional command (InstantAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C00.Rsp")) { + NextTest(); + return; + } + err = TestStep6aThReadTheOptionalCommandInstantActionInAcceptedCommandList_7(); break; case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 7: Read the global attribute: GeneratedCommandList\n"); - err = TestStep7ReadTheGlobalAttributeGeneratedCommandList_8(); + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 6b: TH Read the optional command (InstantActionWithTransition) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C01.Rsp")) { + NextTest(); + return; + } + err = TestStep6bThReadTheOptionalCommandInstantActionWithTransitionInAcceptedCommandList_8(); + break; + case 9: + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 6C: TH Read the optional command (StartAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C02.Rsp")) { + NextTest(); + return; + } + err = TestStep6cThReadTheOptionalCommandStartActionInAcceptedCommandList_9(); + break; + case 10: + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 6d: TH Read the optional command (StartActionWithDuration) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C03.Rsp")) { + NextTest(); + return; + } + err = TestStep6dThReadTheOptionalCommandStartActionWithDurationInAcceptedCommandList_10(); + break; + case 11: + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 6e: TH Read the optional command (StopAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C04.Rsp")) { + NextTest(); + return; + } + err = TestStep6eThReadTheOptionalCommandStopActionInAcceptedCommandList_11(); + break; + case 12: + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 6f: TH Read the optional command (PauseAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C05.Rsp")) { + NextTest(); + return; + } + err = TestStep6fThReadTheOptionalCommandPauseActionInAcceptedCommandList_12(); + break; + case 13: + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 6g: TH Read the optional command (PauseActionWithDuration) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C06.Rsp")) { + NextTest(); + return; + } + err = TestStep6gThReadTheOptionalCommandPauseActionWithDurationInAcceptedCommandList_13(); + break; + case 14: + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 6h: TH Read the optional command (ResumeAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C07.Rsp")) { + NextTest(); + return; + } + err = TestStep6hThReadTheOptionalCommandResumeActionInAcceptedCommandList_14(); + break; + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6i: TH Read the optional command (EnableAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C08.Rsp")) { + NextTest(); + return; + } + err = TestStep6iThReadTheOptionalCommandEnableActionInAcceptedCommandList_15(); + break; + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 6j: TH Read the optional command (EnableActionWithDuration) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C09.Rsp")) { + NextTest(); + return; + } + err = TestStep6jThReadTheOptionalCommandEnableActionWithDurationInAcceptedCommandList_16(); + break; + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 6k: TH Read the optional command (DisableAction) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C0a.Rsp")) { + NextTest(); + return; + } + err = TestStep6kThReadTheOptionalCommandDisableActionInAcceptedCommandList_17(); + break; + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 6l: TH Read the optional command (DisableActionWithDuration) in AcceptedCommandList\n"); + if (ShouldSkip("ACT.S.C0b.Rsp")) { + NextTest(); + return; + } + err = TestStep6lThReadTheOptionalCommandDisableActionWithDurationInAcceptedCommandList_18(); + break; + case 19: + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 7: TH reads from the DUT the GeneratedCommandList attribute.\n"); + err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_19(); break; } @@ -7821,6 +7960,39 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { case 8: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 9: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 10: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 11: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 12: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 13: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 14: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 15: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 16: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 17: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 18: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 19: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -7831,7 +8003,7 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 9; + const uint16_t mTestCount = 20; chip::Optional mNodeId; chip::Optional mCluster; @@ -7846,7 +8018,7 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -7855,9 +8027,9 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Error: %@", err); } else { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -7874,7 +8046,7 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3ReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3ThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -7883,9 +8055,9 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3: TH reads from the DUT the FeatureMap attribute.: Error: %@", err); } else { - NSLog(@"Step 3: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3: TH reads from the DUT the FeatureMap attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -7902,7 +8074,7 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_3() + CHIP_ERROR TestStep4aThReadsFromTheDutTheAttributeListAttribute_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -7911,9 +8083,9 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -7990,17 +8162,32 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5ThReadsEventListAttributeFromDut_6() + CHIP_ERROR TestStep6aThReadTheOptionalCommandInstantActionInAcceptedCommandList_7() { - chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; - value.message = chip::Span("Please enter 'y' for successgarbage: not in length on purpose", 28); - value.expectedValue.Emplace(); - value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); - return UserPrompt("alpha", value); + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6a: TH Read the optional command (InstantAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6a: TH Read the optional command (InstantAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 0UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ReadTheGlobalAttributeAcceptedCommandList_7() + CHIP_ERROR TestStep6bThReadTheOptionalCommandInstantActionWithTransitionInAcceptedCommandList_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -8009,22 +8196,273 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6: Read the global attribute: AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6b: TH Read the optional command (InstantActionWithTransition) in AcceptedCommandList: Error: %@", err); } else { - NSLog(@"Step 6: Read the global attribute: AcceptedCommandList: Success"); + NSLog(@"Step 6b: TH Read the optional command (InstantActionWithTransition) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 1UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6cThReadTheOptionalCommandStartActionInAcceptedCommandList_9() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6C: TH Read the optional command (StartAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6C: TH Read the optional command (StartAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 2UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6dThReadTheOptionalCommandStartActionWithDurationInAcceptedCommandList_10() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6d: TH Read the optional command (StartActionWithDuration) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6d: TH Read the optional command (StartActionWithDuration) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 3UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6eThReadTheOptionalCommandStopActionInAcceptedCommandList_11() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6e: TH Read the optional command (StopAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6e: TH Read the optional command (StopAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 4UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6fThReadTheOptionalCommandPauseActionInAcceptedCommandList_12() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6f: TH Read the optional command (PauseAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6f: TH Read the optional command (PauseAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 5UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6gThReadTheOptionalCommandPauseActionWithDurationInAcceptedCommandList_13() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6g: TH Read the optional command (PauseActionWithDuration) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6g: TH Read the optional command (PauseActionWithDuration) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 6UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6hThReadTheOptionalCommandResumeActionInAcceptedCommandList_14() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6h: TH Read the optional command (ResumeAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6h: TH Read the optional command (ResumeAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 7UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6iThReadTheOptionalCommandEnableActionInAcceptedCommandList_15() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6i: TH Read the optional command (EnableAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6i: TH Read the optional command (EnableAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 8UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6jThReadTheOptionalCommandEnableActionWithDurationInAcceptedCommandList_16() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6j: TH Read the optional command (EnableActionWithDuration) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6j: TH Read the optional command (EnableActionWithDuration) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 9UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6kThReadTheOptionalCommandDisableActionInAcceptedCommandList_17() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6k: TH Read the optional command (DisableAction) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6k: TH Read the optional command (DisableAction) in AcceptedCommandList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 10UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6lThReadTheOptionalCommandDisableActionWithDurationInAcceptedCommandList_18() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActions alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 6l: TH Read the optional command (DisableActionWithDuration) in AcceptedCommandList: Error: %@", err); + } else { + NSLog(@"Step 6l: TH Read the optional command (DisableActionWithDuration) in AcceptedCommandList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); VerifyOrReturn(CheckConstraintType("acceptedCommandList", "list", "list")); - VerifyOrReturn(CheckConstraintMaxLength("acceptedCommandList", value, 11)); + VerifyOrReturn(CheckConstraintContains("acceptedCommandList", value, 11UL)); + NextTest(); }]; return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7ReadTheGlobalAttributeGeneratedCommandList_8() + CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_19() { MTRBaseDevice * device = GetDevice("alpha"); @@ -8033,9 +8471,9 @@ class Test_TC_ACT_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 7: Read the global attribute: GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 7: Read the global attribute: GeneratedCommandList: Success"); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -45290,52 +45728,60 @@ class Test_TC_BINFO_1_1 : public TestCommandBridge { err = TestStep4iThReadsOptionalAttributeUniqueIDInAttributeList_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5a: TH reads EventList from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 4j: TH reads optional attribute(ProductAppearance) in attributeList\n"); + if (ShouldSkip("BINFO.S.A0014")) { + NextTest(); + return; + } + err = TestStep4jThReadsOptionalAttributeProductAppearanceInAttributeList_13(); + break; + case 14: + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 5a: TH reads EventList from DUT\n"); if (ShouldSkip(" !BINFO.S.E00 && !BINFO.S.E01 && !BINFO.S.E02 && !BINFO.S.A0011 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 5b: Read BINFO.S.E00(StartUp) event in EventList\n"); + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 5b: TH reads BINFO.S.E00(StartUp) event in EventList\n"); if (ShouldSkip("BINFO.S.E00 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 5c: Read BINFO.S.E01(ShutDown) event in EventList\n"); + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 5c: TH reads BINFO.S.E01(ShutDown) event in EventList\n"); if (ShouldSkip("BINFO.S.E01 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 5d: Read BINFO.S.E02(Leave) event in EventList\n"); + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 5d: TH reads BINFO.S.E02(Leave) event in EventList\n"); if (ShouldSkip("BINFO.S.E02 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 5e: Read (ReachableChanged) event in EventList\n"); + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 5e: TH reads (ReachableChanged) event in EventList\n"); if (ShouldSkip("BINFO.S.A0011 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 18: - ChipLogProgress(chipTool, " ***** Test Step 18 : Step 6: TH reads from the DUT the AcceptedCommandList attribute.\n"); - err = TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_18(); - break; case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 7: TH reads from the DUT the GeneratedCommandList attribute.\n"); - err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_19(); + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 6: TH reads from the DUT the AcceptedCommandList attribute.\n"); + err = TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_19(); + break; + case 20: + ChipLogProgress(chipTool, " ***** Test Step 20 : Step 7: TH reads from the DUT the GeneratedCommandList attribute.\n"); + err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_20(); break; } @@ -45408,6 +45854,9 @@ class Test_TC_BINFO_1_1 : public TestCommandBridge { case 19: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 20: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -45418,7 +45867,7 @@ class Test_TC_BINFO_1_1 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 20; + const uint16_t mTestCount = 21; chip::Optional mNodeId; chip::Optional mCluster; @@ -45772,7 +46221,32 @@ class Test_TC_BINFO_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_18() + CHIP_ERROR TestStep4jThReadsOptionalAttributeProductAppearanceInAttributeList_13() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterBasicInformation alloc] initWithDevice:device endpointID:@(0) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 4j: TH reads optional attribute(ProductAppearance) in attributeList: Error: %@", err); + } else { + NSLog(@"Step 4j: TH reads optional attribute(ProductAppearance) in attributeList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("attributeList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 20UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_19() { MTRBaseDevice * device = GetDevice("alpha"); @@ -45795,7 +46269,7 @@ class Test_TC_BINFO_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_19() + CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_20() { MTRBaseDevice * device = GetDevice("alpha"); @@ -45869,136 +46343,152 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); - err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the ClusterRevision attribute\n"); + err = TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: Read the global attribute: FeatureMap\n"); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: TH reads from the DUT the FeatureMap attribute\n"); if (ShouldSkip(" !CNET.S.F00 && !CNET.S.F01 && !CNET.S.F02 ")) { NextTest(); return; } - err = TestStep3aReadTheGlobalAttributeFeatureMap_2(); + err = TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 3b: Read the global attribute: FeatureMap when CNET.S.F00 is set\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 3b: TH reads the global attribute: FeatureMap when CNET.S.F00 is set\n"); if (ShouldSkip("CNET.S.F00")) { NextTest(); return; } - err = TestStep3bReadTheGlobalAttributeFeatureMapWhenCnetsf00IsSet_3(); + err = TestStep3bThReadsTheGlobalAttributeFeatureMapWhenCnetsf00IsSet_3(); break; case 4: - ChipLogProgress(chipTool, " ***** Test Step 4 : Step 3c: Read the global attribute: FeatureMap when CNET.S.F01 is set\n"); + ChipLogProgress(chipTool, " ***** Test Step 4 : Step 3c: TH reads the global attribute: FeatureMap when CNET.S.F01 is set\n"); if (ShouldSkip("CNET.S.F01")) { NextTest(); return; } - err = TestStep3cReadTheGlobalAttributeFeatureMapWhenCnetsf01IsSet_4(); + err = TestStep3cThReadsTheGlobalAttributeFeatureMapWhenCnetsf01IsSet_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Step 3d: Read the global attribute: FeatureMap when CNET.S.F02 is set\n"); + ChipLogProgress(chipTool, " ***** Test Step 5 : Step 3d: TH reads the global attribute: FeatureMap when CNET.S.F02 is set\n"); if (ShouldSkip("CNET.S.F02")) { NextTest(); return; } - err = TestStep3dReadTheGlobalAttributeFeatureMapWhenCnetsf02IsSet_5(); + err = TestStep3dThReadsTheGlobalAttributeFeatureMapWhenCnetsf02IsSet_5(); break; case 6: - ChipLogProgress(chipTool, " ***** Test Step 6 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 6 : Step 4a: TH reads from the DUT the AttributeList attribute\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_6(); + err = TestStep4aThReadsFromTheDutTheAttributeListAttribute_6(); break; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4b: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_7(); + err = TestStep4bThReadsFromTheDutTheAttributeListAttribute_7(); break; case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4b: Read mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true\n"); + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4c: TH reads mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true\n"); if (ShouldSkip("CNET.S.F00 || CNET.S.F01 || CNET.S.F02")) { NextTest(); return; } - err = TestStep4bReadMandatoryAttributesInAttributeListIfCnetsf00wiCnetsf01thCnetsf02etIsTrue_8(); + err = TestStep4cThReadsMandatoryAttributesInAttributeListIfCnetsf00wiCnetsf01thCnetsf02etIsTrue_8(); break; case 9: - ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4c: Read the optional attribute(ScanMaxTimeSeconds): AttributeList\n"); - if (ShouldSkip("CNET.S.A0002")) { + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4d: TH reads the feature dependent attribute(ScanMaxTimeSeconds): AttributeList\n"); + if (ShouldSkip("CNET.S.F00 || CNET.S.F01")) { NextTest(); return; } - err = TestStep4cReadTheOptionalAttributeScanMaxTimeSecondsAttributeList_9(); + err = TestStep4dThReadsTheFeatureDependentAttributeScanMaxTimeSecondsAttributeList_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4d: Reading optional attribute(ConnectMaxTimeSeconds) in AttributeList\n"); - if (ShouldSkip("CNET.S.A0003")) { + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4e: TH reads the feature dependent attribute(ConnectMaxTimeSeconds) in AttributeList\n"); + if (ShouldSkip("CNET.S.F00 || CNET.S.F01")) { NextTest(); return; } - err = TestStep4dReadingOptionalAttributeConnectMaxTimeSecondsInAttributeList_10(); + err = TestStep4eThReadsTheFeatureDependentAttributeConnectMaxTimeSecondsInAttributeList_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 5: Read the global attribute: EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4f: TH reads WIFI related attribute (SupportedWiFiBands) in AttributeList\n"); + if (ShouldSkip("CNET.S.F00")) { + NextTest(); + return; + } + err = TestStep4fThReadsWifiRelatedAttributeSupportedWiFiBandsInAttributeList_11(); + break; + case 12: + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4g: TH reads Thread related attribute (SupportedWiFiBands and ThreadVersion) in AttributeList\n"); + if (ShouldSkip("CNET.S.F01")) { + NextTest(); + return; + } + err = TestStep4gThReadsThreadRelatedAttributeSupportedWiFiBandsAndThreadVersionInAttributeList_12(); + break; + case 13: + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5: TH reads from the DUT the EventList attribute\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 6a: Read AcceptedCommandList If DUT supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH)\n"); + case 14: + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 6a: TH reads AcceptedCommandList attribute from DUT. If DUT supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH)\n"); if (ShouldSkip("( CNET.S.F00 || CNET.S.F01 )")) { NextTest(); return; } - err = TestStep6aReadAcceptedCommandListIfDutSupportsWiFiThreadRelatedFeaturesCnetsf00wicnetsf01th_12(); + err = TestStep6aThReadsAcceptedCommandListAttributeFromDutIfDutSupportsWiFiThreadRelatedFeaturesCnetsf00wicnetsf01th_14(); break; - case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 6b: Read AcceptedCommandList If DUT supports Wi-Fi related features (CNET.S.F00(WI) is true)\n"); + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6b: TH reads AcceptedCommandList attribute from DUT. If DUT supports Wi-Fi related features (CNET.S.F00(WI) is true)\n"); if (ShouldSkip("CNET.S.F00")) { NextTest(); return; } - err = TestStep6bReadAcceptedCommandListIfDutSupportsWiFiRelatedFeaturesCnetsf00wiIsTrue_13(); + err = TestStep6bThReadsAcceptedCommandListAttributeFromDutIfDutSupportsWiFiRelatedFeaturesCnetsf00wiIsTrue_15(); break; - case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 6c: Read AcceptedCommandList If DUT supports Thread related features(CNET.S.F01(TH) is true)\n"); + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 6c: TH reads AcceptedCommandList attribute from DUT. If DUT supports Thread related features(CNET.S.F01(TH) is true)\n"); if (ShouldSkip("CNET.S.F01")) { NextTest(); return; } - err = TestStep6cReadAcceptedCommandListIfDutSupportsThreadRelatedFeaturesCNETSF01THIsTrue_14(); + err = TestStep6cThReadsAcceptedCommandListAttributeFromDutIfDutSupportsThreadRelatedFeaturesCNETSF01THIsTrue_16(); break; - case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6d: Read AcceptedCommandList If DUT supports Ethernet related features(CNET.S.F02(TH) is true)\n"); + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 6d: TH reads AcceptedCommandList attribute from DUT. If DUT supports Ethernet related features(CNET.S.F02(TH) is true)\n"); if (ShouldSkip("CNET.S.F02")) { NextTest(); return; } - err = TestStep6dReadAcceptedCommandListIfDutSupportsEthernetRelatedFeaturesCNETSF02THIsTrue_15(); + err = TestStep6dThReadsAcceptedCommandListAttributeFromDutIfDutSupportsEthernetRelatedFeaturesCNETSF02THIsTrue_17(); break; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 7a: Read the GeneratedCommandList If DUT supports Wi-Fi/Thread related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true)\n"); + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 7a: TH reads the GeneratedCommandList attribute from DUT. If DUT supports Wi-Fi/Thread related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true)\n"); if (ShouldSkip("( CNET.S.F00 || CNET.S.F01 )")) { NextTest(); return; } - err = TestStep7aReadTheGeneratedCommandListIfDutSupportsWiFiThreadRelatedFeaturesCNETSF00WIOrCnetsf01thIsTrue_16(); + err = TestStep7aThReadsTheGeneratedCommandListAttributeFromDutIfDutSupportsWiFiThreadRelatedFeaturesCNETSF00WIOrCnetsf01thIsTrue_18(); break; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 7b: Read the GeneratedCommandList If DUT supports Ethernet related features(CNET.S.F02(ET) must be true)\n"); + case 19: + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 7b: Read the GeneratedCommandList attribute from DUT. If DUT supports Ethernet related features(CNET.S.F02(ET) must be true)\n"); if (ShouldSkip("CNET.S.F02")) { NextTest(); return; } - err = TestStep7bReadTheGeneratedCommandListIfDutSupportsEthernetRelatedFeaturesCNETSF02ETMustBeTrue_17(); + err = TestStep7bReadTheGeneratedCommandListAttributeFromDutIfDutSupportsEthernetRelatedFeaturesCNETSF02ETMustBeTrue_19(); break; } @@ -46065,6 +46555,12 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { case 17: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 18: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; + case 19: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -46075,7 +46571,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 18; + const uint16_t mTestCount = 20; chip::Optional mNodeId; chip::Optional mCluster; @@ -46090,7 +46586,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46099,9 +46595,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute: Error: %@", err); } else { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46118,7 +46614,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3aReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46127,9 +46623,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute: Error: %@", err); } else { - NSLog(@"Step 3a: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46145,7 +46641,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3bReadTheGlobalAttributeFeatureMapWhenCnetsf00IsSet_3() + CHIP_ERROR TestStep3bThReadsTheGlobalAttributeFeatureMapWhenCnetsf00IsSet_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46154,9 +46650,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3b: Read the global attribute: FeatureMap when CNET.S.F00 is set: Error: %@", err); + NSLog(@"Step 3b: TH reads the global attribute: FeatureMap when CNET.S.F00 is set: Error: %@", err); } else { - NSLog(@"Step 3b: Read the global attribute: FeatureMap when CNET.S.F00 is set: Success"); + NSLog(@"Step 3b: TH reads the global attribute: FeatureMap when CNET.S.F00 is set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46172,7 +46668,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3cReadTheGlobalAttributeFeatureMapWhenCnetsf01IsSet_4() + CHIP_ERROR TestStep3cThReadsTheGlobalAttributeFeatureMapWhenCnetsf01IsSet_4() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46181,9 +46677,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3c: Read the global attribute: FeatureMap when CNET.S.F01 is set: Error: %@", err); + NSLog(@"Step 3c: TH reads the global attribute: FeatureMap when CNET.S.F01 is set: Error: %@", err); } else { - NSLog(@"Step 3c: Read the global attribute: FeatureMap when CNET.S.F01 is set: Success"); + NSLog(@"Step 3c: TH reads the global attribute: FeatureMap when CNET.S.F01 is set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46199,7 +46695,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3dReadTheGlobalAttributeFeatureMapWhenCnetsf02IsSet_5() + CHIP_ERROR TestStep3dThReadsTheGlobalAttributeFeatureMapWhenCnetsf02IsSet_5() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46208,9 +46704,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3d: Read the global attribute: FeatureMap when CNET.S.F02 is set: Error: %@", err); + NSLog(@"Step 3d: TH reads the global attribute: FeatureMap when CNET.S.F02 is set: Error: %@", err); } else { - NSLog(@"Step 3d: Read the global attribute: FeatureMap when CNET.S.F02 is set: Success"); + NSLog(@"Step 3d: TH reads the global attribute: FeatureMap when CNET.S.F02 is set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46226,7 +46722,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_6() + CHIP_ERROR TestStep4aThReadsFromTheDutTheAttributeListAttribute_6() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46235,9 +46731,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46256,7 +46752,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_7() + CHIP_ERROR TestStep4bThReadsFromTheDutTheAttributeListAttribute_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46265,9 +46761,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4b: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4b: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46285,7 +46781,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bReadMandatoryAttributesInAttributeListIfCnetsf00wiCnetsf01thCnetsf02etIsTrue_8() + CHIP_ERROR TestStep4cThReadsMandatoryAttributesInAttributeListIfCnetsf00wiCnetsf01thCnetsf02etIsTrue_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46294,9 +46790,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4b: Read mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true: Error: %@", err); + NSLog(@"Step 4c: TH reads mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true: Error: %@", err); } else { - NSLog(@"Step 4b: Read mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true: Success"); + NSLog(@"Step 4c: TH reads mandatory attributes in AttributeList if CNET.S.F00(WI)/CNET.S.F01(TH)/CNET.S.F02(ET) is true: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46315,7 +46811,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4cReadTheOptionalAttributeScanMaxTimeSecondsAttributeList_9() + CHIP_ERROR TestStep4dThReadsTheFeatureDependentAttributeScanMaxTimeSecondsAttributeList_9() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46324,9 +46820,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4c: Read the optional attribute(ScanMaxTimeSeconds): AttributeList: Error: %@", err); + NSLog(@"Step 4d: TH reads the feature dependent attribute(ScanMaxTimeSeconds): AttributeList: Error: %@", err); } else { - NSLog(@"Step 4c: Read the optional attribute(ScanMaxTimeSeconds): AttributeList: Success"); + NSLog(@"Step 4d: TH reads the feature dependent attribute(ScanMaxTimeSeconds): AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46340,7 +46836,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4dReadingOptionalAttributeConnectMaxTimeSecondsInAttributeList_10() + CHIP_ERROR TestStep4eThReadsTheFeatureDependentAttributeConnectMaxTimeSecondsInAttributeList_10() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46349,9 +46845,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4d: Reading optional attribute(ConnectMaxTimeSeconds) in AttributeList: Error: %@", err); + NSLog(@"Step 4e: TH reads the feature dependent attribute(ConnectMaxTimeSeconds) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4d: Reading optional attribute(ConnectMaxTimeSeconds) in AttributeList: Success"); + NSLog(@"Step 4e: TH reads the feature dependent attribute(ConnectMaxTimeSeconds) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46365,7 +46861,58 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6aReadAcceptedCommandListIfDutSupportsWiFiThreadRelatedFeaturesCnetsf00wicnetsf01th_12() + CHIP_ERROR TestStep4fThReadsWifiRelatedAttributeSupportedWiFiBandsInAttributeList_11() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterNetworkCommissioning alloc] initWithDevice:device endpointID:@(0) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 4f: TH reads WIFI related attribute (SupportedWiFiBands) in AttributeList: Error: %@", err); + } else { + NSLog(@"Step 4f: TH reads WIFI related attribute (SupportedWiFiBands) in AttributeList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("attributeList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 8UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep4gThReadsThreadRelatedAttributeSupportedWiFiBandsAndThreadVersionInAttributeList_12() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterNetworkCommissioning alloc] initWithDevice:device endpointID:@(0) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 4g: TH reads Thread related attribute (SupportedWiFiBands and ThreadVersion) in AttributeList: Error: %@", err); + } else { + NSLog(@"Step 4g: TH reads Thread related attribute (SupportedWiFiBands and ThreadVersion) in AttributeList: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + VerifyOrReturn(CheckConstraintType("attributeList", "list", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 9UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 10UL)); + + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep6aThReadsAcceptedCommandListAttributeFromDutIfDutSupportsWiFiThreadRelatedFeaturesCnetsf00wicnetsf01th_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46374,9 +46921,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6a: Read AcceptedCommandList If DUT supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH): Error: %@", err); + NSLog(@"Step 6a: TH reads AcceptedCommandList attribute from DUT. If DUT supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH): Error: %@", err); } else { - NSLog(@"Step 6a: Read AcceptedCommandList If DUT supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH): Success"); + NSLog(@"Step 6a: TH reads AcceptedCommandList attribute from DUT. If DUT supports Wi-Fi/Thread related features CNET.S.F00(WI),CNET.S.F01(TH): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46393,7 +46940,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6bReadAcceptedCommandListIfDutSupportsWiFiRelatedFeaturesCnetsf00wiIsTrue_13() + CHIP_ERROR TestStep6bThReadsAcceptedCommandListAttributeFromDutIfDutSupportsWiFiRelatedFeaturesCnetsf00wiIsTrue_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46402,9 +46949,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6b: Read AcceptedCommandList If DUT supports Wi-Fi related features (CNET.S.F00(WI) is true): Error: %@", err); + NSLog(@"Step 6b: TH reads AcceptedCommandList attribute from DUT. If DUT supports Wi-Fi related features (CNET.S.F00(WI) is true): Error: %@", err); } else { - NSLog(@"Step 6b: Read AcceptedCommandList If DUT supports Wi-Fi related features (CNET.S.F00(WI) is true): Success"); + NSLog(@"Step 6b: TH reads AcceptedCommandList attribute from DUT. If DUT supports Wi-Fi related features (CNET.S.F00(WI) is true): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46418,7 +46965,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6cReadAcceptedCommandListIfDutSupportsThreadRelatedFeaturesCNETSF01THIsTrue_14() + CHIP_ERROR TestStep6cThReadsAcceptedCommandListAttributeFromDutIfDutSupportsThreadRelatedFeaturesCNETSF01THIsTrue_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46427,9 +46974,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6c: Read AcceptedCommandList If DUT supports Thread related features(CNET.S.F01(TH) is true): Error: %@", err); + NSLog(@"Step 6c: TH reads AcceptedCommandList attribute from DUT. If DUT supports Thread related features(CNET.S.F01(TH) is true): Error: %@", err); } else { - NSLog(@"Step 6c: Read AcceptedCommandList If DUT supports Thread related features(CNET.S.F01(TH) is true): Success"); + NSLog(@"Step 6c: TH reads AcceptedCommandList attribute from DUT. If DUT supports Thread related features(CNET.S.F01(TH) is true): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46443,7 +46990,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6dReadAcceptedCommandListIfDutSupportsEthernetRelatedFeaturesCNETSF02THIsTrue_15() + CHIP_ERROR TestStep6dThReadsAcceptedCommandListAttributeFromDutIfDutSupportsEthernetRelatedFeaturesCNETSF02THIsTrue_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46452,9 +46999,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6d: Read AcceptedCommandList If DUT supports Ethernet related features(CNET.S.F02(TH) is true): Error: %@", err); + NSLog(@"Step 6d: TH reads AcceptedCommandList attribute from DUT. If DUT supports Ethernet related features(CNET.S.F02(TH) is true): Error: %@", err); } else { - NSLog(@"Step 6d: Read AcceptedCommandList If DUT supports Ethernet related features(CNET.S.F02(TH) is true): Success"); + NSLog(@"Step 6d: TH reads AcceptedCommandList attribute from DUT. If DUT supports Ethernet related features(CNET.S.F02(TH) is true): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46470,7 +47017,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7aReadTheGeneratedCommandListIfDutSupportsWiFiThreadRelatedFeaturesCNETSF00WIOrCnetsf01thIsTrue_16() + CHIP_ERROR TestStep7aThReadsTheGeneratedCommandListAttributeFromDutIfDutSupportsWiFiThreadRelatedFeaturesCNETSF00WIOrCnetsf01thIsTrue_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46479,9 +47026,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 7a: Read the GeneratedCommandList If DUT supports Wi-Fi/Thread related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true): Error: %@", err); + NSLog(@"Step 7a: TH reads the GeneratedCommandList attribute from DUT. If DUT supports Wi-Fi/Thread related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true): Error: %@", err); } else { - NSLog(@"Step 7a: Read the GeneratedCommandList If DUT supports Wi-Fi/Thread related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true): Success"); + NSLog(@"Step 7a: TH reads the GeneratedCommandList attribute from DUT. If DUT supports Wi-Fi/Thread related features(CNET.S.F00(WI) or CNET.S.F01(TH) is true): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46497,7 +47044,7 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7bReadTheGeneratedCommandListIfDutSupportsEthernetRelatedFeaturesCNETSF02ETMustBeTrue_17() + CHIP_ERROR TestStep7bReadTheGeneratedCommandListAttributeFromDutIfDutSupportsEthernetRelatedFeaturesCNETSF02ETMustBeTrue_19() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46506,9 +47053,9 @@ class Test_TC_CNET_1_3 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 7b: Read the GeneratedCommandList If DUT supports Ethernet related features(CNET.S.F02(ET) must be true): Error: %@", err); + NSLog(@"Step 7b: Read the GeneratedCommandList attribute from DUT. If DUT supports Ethernet related features(CNET.S.F02(ET) must be true): Error: %@", err); } else { - NSLog(@"Step 7b: Read the GeneratedCommandList If DUT supports Ethernet related features(CNET.S.F02(ET) must be true): Success"); + NSLog(@"Step 7b: Read the GeneratedCommandList attribute from DUT. If DUT supports Ethernet related features(CNET.S.F02(ET) must be true): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52469,75 +53016,79 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); - err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the ClusterRevision attribute.\n"); + err = TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: Read the global attribute: FeatureMap\n"); - err = TestStep3ReadTheGlobalAttributeFeatureMap_2(); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: TH reads from the DUT the FeatureMap attribute.\n"); + err = TestStep3ThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4a: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_3(); + err = TestStep4aThReadsFromTheDutTheAttributeListAttribute_3(); break; case 4: - ChipLogProgress(chipTool, " ***** Test Step 4 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 4 : Step 4a: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_4(); + err = TestStep4aThReadsFromTheDutTheAttributeListAttribute_4(); break; case 5: ChipLogProgress(chipTool, " ***** Test Step 5 : Step 4b: Validate presence of mandatory attribute(UpTime) in AttributeList\n"); + if (ShouldSkip("DGGEN.S.A0002")) { + NextTest(); + return; + } err = TestStep4bValidatePresenceOfMandatoryAttributeUpTimeInAttributeList_5(); break; case 6: - ChipLogProgress(chipTool, " ***** Test Step 6 : Step 4c: Read optional attribute(TotalOperationalHours) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 6 : Step 4c: TH reads optional attribute(TotalOperationalHours) in AttributeList\n"); if (ShouldSkip("DGGEN.S.A0003")) { NextTest(); return; } - err = TestStep4cReadOptionalAttributeTotalOperationalHoursInAttributeList_6(); + err = TestStep4cThReadsOptionalAttributeTotalOperationalHoursInAttributeList_6(); break; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4d: Read optional attribute(BootReason) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4d: TH reads optional attribute(BootReason) in AttributeList\n"); if (ShouldSkip("DGGEN.S.A0004")) { NextTest(); return; } - err = TestStep4dReadOptionalAttributeBootReasonInAttributeList_7(); + err = TestStep4dThReadsOptionalAttributeBootReasonInAttributeList_7(); break; case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4e: Read optional attribute(ActiveHardwareFaults) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4e: TH reads optional attribute(ActiveHardwareFaults) in AttributeList\n"); if (ShouldSkip("DGGEN.S.A0005")) { NextTest(); return; } - err = TestStep4eReadOptionalAttributeActiveHardwareFaultsInAttributeList_8(); + err = TestStep4eThReadsOptionalAttributeActiveHardwareFaultsInAttributeList_8(); break; case 9: - ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4f: Read optional attribute(ActiveRadioFaults) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4f: TH reads optional attribute(ActiveRadioFaults) in AttributeList\n"); if (ShouldSkip("DGGEN.S.A0006")) { NextTest(); return; } - err = TestStep4fReadOptionalAttributeActiveRadioFaultsInAttributeList_9(); + err = TestStep4fThReadsOptionalAttributeActiveRadioFaultsInAttributeList_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4g: Read optional attribute(ActiveNetworkFaults) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4g: TH reads optional attribute(ActiveNetworkFaults) in AttributeList\n"); if (ShouldSkip("DGGEN.S.A0007")) { NextTest(); return; } - err = TestStep4gReadOptionalAttributeActiveNetworkFaultsInAttributeList_10(); + err = TestStep4gThReadsOptionalAttributeActiveNetworkFaultsInAttributeList_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 5a: Read the global attribute: EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 5a: TH reads from the DUT the EventList attribute\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; @@ -52545,7 +53096,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { NextTest(); return; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 5b: Read optional event(HardwareFaultChange) in EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 5b: TH reads optional event(HardwareFaultChange) in EventList\n"); if (ShouldSkip("DGGEN.S.E00 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; @@ -52553,7 +53104,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { NextTest(); return; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5c: Read optional event(RadioFaultChange) in EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5c: TH reads optional event(RadioFaultChange) in EventList\n"); if (ShouldSkip("DGGEN.S.E01 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; @@ -52561,7 +53112,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { NextTest(); return; case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 5d: Read optional event(NetworkFaultChange) in EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 5d: TH reads optional event(NetworkFaultChange) in EventList\n"); if (ShouldSkip("DGGEN.S.E02 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; @@ -52569,12 +53120,12 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { NextTest(); return; case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6: Read the global attribute: AcceptedCommandList\n"); - err = TestStep6ReadTheGlobalAttributeAcceptedCommandList_15(); + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6: TH reads from the DUT the AcceptedCommandList attribute\n"); + err = TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_15(); break; case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 7: TH reads GeneratedCommandList from DUT\n"); - err = TestStep7ThReadsGeneratedCommandListFromDut_16(); + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 7: TH reads from the DUT the GeneratedCommandList attribute\n"); + err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_16(); break; } @@ -52663,7 +53214,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52672,9 +53223,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Error: %@", err); } else { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52691,7 +53242,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3ReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3ThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52700,9 +53251,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3: TH reads from the DUT the FeatureMap attribute.: Error: %@", err); } else { - NSLog(@"Step 3: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3: TH reads from the DUT the FeatureMap attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52719,7 +53270,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_3() + CHIP_ERROR TestStep4aThReadsFromTheDutTheAttributeListAttribute_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52728,9 +53279,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52752,7 +53303,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_4() + CHIP_ERROR TestStep4aThReadsFromTheDutTheAttributeListAttribute_4() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52761,9 +53312,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52809,7 +53360,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4cReadOptionalAttributeTotalOperationalHoursInAttributeList_6() + CHIP_ERROR TestStep4cThReadsOptionalAttributeTotalOperationalHoursInAttributeList_6() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52818,9 +53369,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4c: Read optional attribute(TotalOperationalHours) in AttributeList: Error: %@", err); + NSLog(@"Step 4c: TH reads optional attribute(TotalOperationalHours) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4c: Read optional attribute(TotalOperationalHours) in AttributeList: Success"); + NSLog(@"Step 4c: TH reads optional attribute(TotalOperationalHours) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52834,7 +53385,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4dReadOptionalAttributeBootReasonInAttributeList_7() + CHIP_ERROR TestStep4dThReadsOptionalAttributeBootReasonInAttributeList_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52843,9 +53394,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4d: Read optional attribute(BootReason) in AttributeList: Error: %@", err); + NSLog(@"Step 4d: TH reads optional attribute(BootReason) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4d: Read optional attribute(BootReason) in AttributeList: Success"); + NSLog(@"Step 4d: TH reads optional attribute(BootReason) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52859,7 +53410,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4eReadOptionalAttributeActiveHardwareFaultsInAttributeList_8() + CHIP_ERROR TestStep4eThReadsOptionalAttributeActiveHardwareFaultsInAttributeList_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52868,9 +53419,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4e: Read optional attribute(ActiveHardwareFaults) in AttributeList: Error: %@", err); + NSLog(@"Step 4e: TH reads optional attribute(ActiveHardwareFaults) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4e: Read optional attribute(ActiveHardwareFaults) in AttributeList: Success"); + NSLog(@"Step 4e: TH reads optional attribute(ActiveHardwareFaults) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52884,7 +53435,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4fReadOptionalAttributeActiveRadioFaultsInAttributeList_9() + CHIP_ERROR TestStep4fThReadsOptionalAttributeActiveRadioFaultsInAttributeList_9() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52893,9 +53444,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4f: Read optional attribute(ActiveRadioFaults) in AttributeList: Error: %@", err); + NSLog(@"Step 4f: TH reads optional attribute(ActiveRadioFaults) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4f: Read optional attribute(ActiveRadioFaults) in AttributeList: Success"); + NSLog(@"Step 4f: TH reads optional attribute(ActiveRadioFaults) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52909,7 +53460,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4gReadOptionalAttributeActiveNetworkFaultsInAttributeList_10() + CHIP_ERROR TestStep4gThReadsOptionalAttributeActiveNetworkFaultsInAttributeList_10() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52918,9 +53469,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4g: Read optional attribute(ActiveNetworkFaults) in AttributeList: Error: %@", err); + NSLog(@"Step 4g: TH reads optional attribute(ActiveNetworkFaults) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4g: Read optional attribute(ActiveNetworkFaults) in AttributeList: Success"); + NSLog(@"Step 4g: TH reads optional attribute(ActiveNetworkFaults) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52934,7 +53485,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ReadTheGlobalAttributeAcceptedCommandList_15() + CHIP_ERROR TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52943,9 +53494,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6: Read the global attribute: AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6: TH reads from the DUT the AcceptedCommandList attribute: Error: %@", err); } else { - NSLog(@"Step 6: Read the global attribute: AcceptedCommandList: Success"); + NSLog(@"Step 6: TH reads from the DUT the AcceptedCommandList attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -52960,7 +53511,7 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7ThReadsGeneratedCommandListFromDut_16() + CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -52969,9 +53520,9 @@ class Test_TC_DGGEN_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 7: TH reads GeneratedCommandList from DUT: Error: %@", err); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute: Error: %@", err); } else { - NSLog(@"Step 7: TH reads GeneratedCommandList from DUT: Success"); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -56766,11 +57317,11 @@ class Test_TC_I_2_3 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Commission DUT to TH (can be skipped if done in a preceding test).\n"); + err = TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2a: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x00 blink and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2a: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x00 (blink) and the effect variant field set to 0x00 (default)\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56786,7 +57337,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutExecutesABlinkEffect_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 2b: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 2b: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56802,7 +57353,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutExecutesABreatheEffect_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Step 2c: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x02 okay and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 5 : Step 2c: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x02 (okay) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56818,12 +57369,12 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutExecutesAnOkayEffect_6(); break; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 2d: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x0b channel change and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 2d:TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x0b (channel change) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; } - err = TestStep2dThSendsTriggerEffectCommandToDutWithTheEffectIdentifierFieldSetTo0x0bChannelChangeAndTheEffectVariantFieldSetTo0x00Default_7(); + err = TestStep2dTHSendsTriggerEffectCommandToDutWithTheEffectIdentifierFieldSetTo0x0bChannelChangeAndTheEffectVariantFieldSetTo0x00Default_7(); break; case 8: ChipLogProgress(chipTool, " ***** Test Step 8 : DUT executes a channel change effect\n"); @@ -56834,7 +57385,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutExecutesAChannelChangeEffect_8(); break; case 9: - ChipLogProgress(chipTool, " ***** Test Step 9 : Step 2e: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 2e: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56850,7 +57401,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutExecutesABreatheEffect_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 2f: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xfe finish effect and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 2f: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xfe (finish effect) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56866,7 +57417,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutStopsTheBreatheEffectAfterTheCurrentEffectSequence_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 2g: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 2g: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56882,7 +57433,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutExecutesABreatheEffect_14(); break; case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 2h: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xff stop effect and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 2h: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xff (stop effect) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56898,7 +57449,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestDutStopsTheBreatheEffectAsSoonAsPossible_16(); break; case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 3a: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x00 blink and the effect variant field set to 0x42 unknown\n"); + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 3a: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x00 (blink) and the effect variant field set to 0x42 (unknown).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -56914,7 +57465,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { err = TestCheckDutExecutesABlinkEffect_18(); break; case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 3b: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xff stop effect and the effect variant field set to 0x00 default\n"); + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 3b: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xff (stop effect) and the effect variant field set to 0x00 (default).\n"); if (ShouldSkip("I.S.C40.Rsp")) { NextTest(); return; @@ -57020,7 +57571,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -57043,9 +57594,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2a: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x00 blink and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2a: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x00 (blink) and the effect variant field set to 0x00 (default): Error: %@", err); } else { - NSLog(@"Step 2a: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x00 blink and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2a: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x00 (blink) and the effect variant field set to 0x00 (default): Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57081,9 +57632,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2b: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2b: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2b: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2b: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57119,9 +57670,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2c: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x02 okay and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2c: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x02 (okay) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2c: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x02 okay and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2c: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x02 (okay) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57142,7 +57693,7 @@ class Test_TC_I_2_3 : public TestCommandBridge { return UserPrompt("alpha", value); } - CHIP_ERROR TestStep2dThSendsTriggerEffectCommandToDutWithTheEffectIdentifierFieldSetTo0x0bChannelChangeAndTheEffectVariantFieldSetTo0x00Default_7() + CHIP_ERROR TestStep2dTHSendsTriggerEffectCommandToDutWithTheEffectIdentifierFieldSetTo0x0bChannelChangeAndTheEffectVariantFieldSetTo0x00Default_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -57157,9 +57708,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2d: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x0b channel change and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2d:TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x0b (channel change) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2d: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x0b channel change and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2d:TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x0b (channel change) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57195,9 +57746,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2e: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2e: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2e: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2e: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57233,9 +57784,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2f: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xfe finish effect and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2f: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xfe (finish effect) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2f: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xfe finish effect and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2f: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xfe (finish effect) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57271,9 +57822,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2g: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2g: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2g: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x01 breathe and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2g: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x01 (breathe) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57309,9 +57860,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2h: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xff stop effect and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 2h: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xff (stop effect) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 2h: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xff stop effect and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 2h: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xff (stop effect) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57347,9 +57898,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x00 blink and the effect variant field set to 0x42 unknown: Error: %@", err); + NSLog(@"Step 3a: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x00 (blink) and the effect variant field set to 0x42 (unknown).: Error: %@", err); } else { - NSLog(@"Step 3a: TH sends TriggerEffect command to DUT with the effect identifier field set to 0x00 blink and the effect variant field set to 0x42 unknown: Success"); + NSLog(@"Step 3a: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0x00 (blink) and the effect variant field set to 0x42 (unknown).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -57385,9 +57936,9 @@ class Test_TC_I_2_3 : public TestCommandBridge { [cluster triggerEffectWithParams:params completion: ^(NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3b: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xff stop effect and the effect variant field set to 0x00 default: Error: %@", err); + NSLog(@"Step 3b: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xff (stop effect) and the effect variant field set to 0x00 (default).: Error: %@", err); } else { - NSLog(@"Step 3b: TH sends TriggerEffect command to DUT with the effect identifier field set to 0xff stop effect and the effect variant field set to 0x00 default: Success"); + NSLog(@"Step 3b: TH sends TriggerEffect command to DUT, with the effect identifier field set to 0xff (stop effect) and the effect variant field set to 0x00 (default).: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58443,149 +58994,149 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 0: Wait for the commissioned device to be retrieved\n"); - err = TestStep0WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Commission DUT to TH (can be skipped if done in a preceding test).\n"); + err = TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 1: Read the global attribute: ClusterRevision\n"); - err = TestStep1ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the ClusterRevision attribute.\n"); + err = TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 2a: Read the global attribute: FeatureMap\n"); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: TH reads from the DUT the FeatureMap attribute.\n"); if (ShouldSkip(" !LVL.S.F00 && !LVL.S.F01 && !LVL.S.F02 ")) { NextTest(); return; } - err = TestStep2aReadTheGlobalAttributeFeatureMap_2(); + err = TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 2b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set\n"); + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 3b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set\n"); if (ShouldSkip("LVL.S.F00")) { NextTest(); return; } - err = TestStep2bGivenLvlsf00ooEnsureFeaturemapHasTheCorrectBitSet_3(); + err = TestStep3bGivenLvlsf00ooEnsureFeaturemapHasTheCorrectBitSet_3(); break; case 4: - ChipLogProgress(chipTool, " ***** Test Step 4 : Step 2c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set\n"); + ChipLogProgress(chipTool, " ***** Test Step 4 : Step 3c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set\n"); if (ShouldSkip("LVL.S.F01")) { NextTest(); return; } - err = TestStep2cGivenLvlsf01ltEnsureFeaturemapHasTheCorrectBitSet_4(); + err = TestStep3cGivenLvlsf01ltEnsureFeaturemapHasTheCorrectBitSet_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Step 2d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set\n"); + ChipLogProgress(chipTool, " ***** Test Step 5 : Step 3d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set\n"); if (ShouldSkip("LVL.S.F02")) { NextTest(); return; } - err = TestStep2dGivenLvlsf02fqEnsureFeaturemapHasTheCorrectBitSet_5(); + err = TestStep3dGivenLvlsf02fqEnsureFeaturemapHasTheCorrectBitSet_5(); break; case 6: - ChipLogProgress(chipTool, " ***** Test Step 6 : Step 3a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 6 : Step 4: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep3aReadTheGlobalAttributeAttributeList_6(); + err = TestStep4ThReadsFromTheDutTheAttributeListAttribute_6(); break; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 3a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep3aReadTheGlobalAttributeAttributeList_7(); + err = TestStep4ThReadsFromTheDutTheAttributeListAttribute_7(); break; case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 3b: Read the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4a: TH reads the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList\n"); if (ShouldSkip("LVL.S.F01")) { NextTest(); return; } - err = TestStep3bReadTheOptionalAttributeStartUpCurrentLevelAndRemainingTimeInAttributeList_8(); + err = TestStep4aThReadsTheOptionalAttributeStartUpCurrentLevelAndRemainingTimeInAttributeList_8(); break; case 9: - ChipLogProgress(chipTool, " ***** Test Step 9 : Step 3c: Read the optional attribute(CurrentFrequency, MinFrequency and MinFrequency) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4b: TH reads the optional attribute(CurrentFrequency, MinFrequency and MinFrequency) in AttributeList\n"); if (ShouldSkip("LVL.S.F02")) { NextTest(); return; } - err = TestStep3cReadTheOptionalAttributeCurrentFrequencyMinFrequencyAndMinFrequencyInAttributeList_9(); + err = TestStep4bThReadsTheOptionalAttributeCurrentFrequencyMinFrequencyAndMinFrequencyInAttributeList_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 3d: Read the optional attribute(MinLevel) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4c: TH reads the optional attribute(MinLevel) in AttributeList\n"); if (ShouldSkip("LVL.S.A0002")) { NextTest(); return; } - err = TestStep3dReadTheOptionalAttributeMinLevelInAttributeList_10(); + err = TestStep4cThReadsTheOptionalAttributeMinLevelInAttributeList_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 3e: Read the optional attribute(MaxLevel) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4d: TH reads the optional attribute(MaxLevel) in AttributeList\n"); if (ShouldSkip("LVL.S.A0003")) { NextTest(); return; } - err = TestStep3eReadTheOptionalAttributeMaxLevelInAttributeList_11(); + err = TestStep4dThReadsTheOptionalAttributeMaxLevelInAttributeList_11(); break; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 3f: Read the optional attribute(OnOffTransitionTime) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4e: TH reads the optional attribute(OnOffTransitionTime) in AttributeList\n"); if (ShouldSkip("LVL.S.A0010")) { NextTest(); return; } - err = TestStep3fReadTheOptionalAttributeOnOffTransitionTimeInAttributeList_12(); + err = TestStep4eThReadsTheOptionalAttributeOnOffTransitionTimeInAttributeList_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 3g: Read the optional attribute(OnTransitionTime) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 4f: TH reads the optional attribute(OnTransitionTime) in AttributeList\n"); if (ShouldSkip("LVL.S.A0012")) { NextTest(); return; } - err = TestStep3gReadTheOptionalAttributeOnTransitionTimeInAttributeList_13(); + err = TestStep4fThReadsTheOptionalAttributeOnTransitionTimeInAttributeList_13(); break; case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 3h: Read the optional attribute(OffTransitionTime) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 4g: TH reads the optional attribute(OffTransitionTime) in AttributeList\n"); if (ShouldSkip("LVL.S.A0013")) { NextTest(); return; } - err = TestStep3hReadTheOptionalAttributeOffTransitionTimeInAttributeList_14(); + err = TestStep4gThReadsTheOptionalAttributeOffTransitionTimeInAttributeList_14(); break; case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 3i: Read the optional attribute(DefaultMoveRate) in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 4h: TH reads the optional attribute(DefaultMoveRate) in AttributeList\n"); if (ShouldSkip("LVL.S.A0014")) { NextTest(); return; } - err = TestStep3iReadTheOptionalAttributeDefaultMoveRateInAttributeList_15(); + err = TestStep4hThReadsTheOptionalAttributeDefaultMoveRateInAttributeList_15(); break; case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 4a: Read the global attribute: AcceptedCommandList\n"); - err = TestStep4aReadTheGlobalAttributeAcceptedCommandList_16(); - break; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 4a.1: Read the Feature-dependent(LVL.S.F02) command in AcceptedCommandList\n"); - if (ShouldSkip("LVL.S.F02")) { + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 5: Read the global attribute: EventList\n"); + if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4a1ReadTheFeatureDependentLVLSF02CommandInAcceptedCommandList_17(); + NextTest(); + return; + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 6a: TH reads from the DUT the AcceptedCommandList attribute.\n"); + err = TestStep6aThReadsFromTheDutTheAcceptedCommandListAttribute_17(); break; case 18: - ChipLogProgress(chipTool, " ***** Test Step 18 : Step 4b: Read the global attribute: GeneratedCommandList\n"); - err = TestStep4bReadTheGlobalAttributeGeneratedCommandList_18(); - break; - case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 5: Read the global attribute: EventList\n"); - if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 6a.1: TH reads the Feature-dependent(LVL.S.F02) command in AcceptedCommandList\n"); + if (ShouldSkip("LVL.S.F02")) { NextTest(); return; } - NextTest(); - return; + err = TestStep6a1ThReadsTheFeatureDependentLVLSF02CommandInAcceptedCommandList_18(); + break; + case 19: + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 7: TH reads from the DUT the GeneratedCommandList attribute.\n"); + err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_19(); + break; } if (CHIP_NO_ERROR != err) { @@ -58674,7 +59225,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep0WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -58682,7 +59233,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep1ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58691,9 +59242,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 1: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Error: %@", err); } else { - NSLog(@"Step 1: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58710,7 +59261,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep2aReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58719,9 +59270,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2a: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute.: Error: %@", err); } else { - NSLog(@"Step 2a: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58738,7 +59289,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep2bGivenLvlsf00ooEnsureFeaturemapHasTheCorrectBitSet_3() + CHIP_ERROR TestStep3bGivenLvlsf00ooEnsureFeaturemapHasTheCorrectBitSet_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58747,9 +59298,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set: Error: %@", err); + NSLog(@"Step 3b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set: Error: %@", err); } else { - NSLog(@"Step 2b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set: Success"); + NSLog(@"Step 3b: Given LVL.S.F00(OO) ensure featuremap has the correct bit set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58761,7 +59312,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep2cGivenLvlsf01ltEnsureFeaturemapHasTheCorrectBitSet_4() + CHIP_ERROR TestStep3cGivenLvlsf01ltEnsureFeaturemapHasTheCorrectBitSet_4() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58770,9 +59321,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set: Error: %@", err); + NSLog(@"Step 3c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set: Error: %@", err); } else { - NSLog(@"Step 2c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set: Success"); + NSLog(@"Step 3c: Given LVL.S.F01(LT) ensure featuremap has the correct bit set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58784,7 +59335,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep2dGivenLvlsf02fqEnsureFeaturemapHasTheCorrectBitSet_5() + CHIP_ERROR TestStep3dGivenLvlsf02fqEnsureFeaturemapHasTheCorrectBitSet_5() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58793,9 +59344,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set: Error: %@", err); + NSLog(@"Step 3d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set: Error: %@", err); } else { - NSLog(@"Step 2d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set: Success"); + NSLog(@"Step 3d: Given LVL.S.F02(FQ) ensure featuremap has the correct bit set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58807,7 +59358,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3aReadTheGlobalAttributeAttributeList_6() + CHIP_ERROR TestStep4ThReadsFromTheDutTheAttributeListAttribute_6() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58816,9 +59367,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 3a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58840,7 +59391,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3aReadTheGlobalAttributeAttributeList_7() + CHIP_ERROR TestStep4ThReadsFromTheDutTheAttributeListAttribute_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58849,9 +59400,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 3a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58872,7 +59423,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3bReadTheOptionalAttributeStartUpCurrentLevelAndRemainingTimeInAttributeList_8() + CHIP_ERROR TestStep4aThReadsTheOptionalAttributeStartUpCurrentLevelAndRemainingTimeInAttributeList_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58881,9 +59432,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3b: Read the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3b: Read the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList: Success"); + NSLog(@"Step 4a: TH reads the optional attribute(StartUpCurrentLevel and RemainingTime) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58898,7 +59449,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3cReadTheOptionalAttributeCurrentFrequencyMinFrequencyAndMinFrequencyInAttributeList_9() + CHIP_ERROR TestStep4bThReadsTheOptionalAttributeCurrentFrequencyMinFrequencyAndMinFrequencyInAttributeList_9() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58907,9 +59458,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3c: Read the optional attribute(CurrentFrequency, MinFrequency and MinFrequency) in AttributeList: Error: %@", err); + NSLog(@"Step 4b: TH reads the optional attribute(CurrentFrequency, MinFrequency and MinFrequency) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3c: Read the optional attribute(CurrentFrequency, MinFrequency and MinFrequency) in AttributeList: Success"); + NSLog(@"Step 4b: TH reads the optional attribute(CurrentFrequency, MinFrequency and MinFrequency) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58925,7 +59476,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3dReadTheOptionalAttributeMinLevelInAttributeList_10() + CHIP_ERROR TestStep4cThReadsTheOptionalAttributeMinLevelInAttributeList_10() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58934,9 +59485,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3d: Read the optional attribute(MinLevel) in AttributeList: Error: %@", err); + NSLog(@"Step 4c: TH reads the optional attribute(MinLevel) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3d: Read the optional attribute(MinLevel) in AttributeList: Success"); + NSLog(@"Step 4c: TH reads the optional attribute(MinLevel) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58950,7 +59501,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3eReadTheOptionalAttributeMaxLevelInAttributeList_11() + CHIP_ERROR TestStep4dThReadsTheOptionalAttributeMaxLevelInAttributeList_11() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58959,9 +59510,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3e: Read the optional attribute(MaxLevel) in AttributeList: Error: %@", err); + NSLog(@"Step 4d: TH reads the optional attribute(MaxLevel) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3e: Read the optional attribute(MaxLevel) in AttributeList: Success"); + NSLog(@"Step 4d: TH reads the optional attribute(MaxLevel) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -58975,7 +59526,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3fReadTheOptionalAttributeOnOffTransitionTimeInAttributeList_12() + CHIP_ERROR TestStep4eThReadsTheOptionalAttributeOnOffTransitionTimeInAttributeList_12() { MTRBaseDevice * device = GetDevice("alpha"); @@ -58984,9 +59535,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3f: Read the optional attribute(OnOffTransitionTime) in AttributeList: Error: %@", err); + NSLog(@"Step 4e: TH reads the optional attribute(OnOffTransitionTime) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3f: Read the optional attribute(OnOffTransitionTime) in AttributeList: Success"); + NSLog(@"Step 4e: TH reads the optional attribute(OnOffTransitionTime) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -59000,7 +59551,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3gReadTheOptionalAttributeOnTransitionTimeInAttributeList_13() + CHIP_ERROR TestStep4fThReadsTheOptionalAttributeOnTransitionTimeInAttributeList_13() { MTRBaseDevice * device = GetDevice("alpha"); @@ -59009,9 +59560,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3g: Read the optional attribute(OnTransitionTime) in AttributeList: Error: %@", err); + NSLog(@"Step 4f: TH reads the optional attribute(OnTransitionTime) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3g: Read the optional attribute(OnTransitionTime) in AttributeList: Success"); + NSLog(@"Step 4f: TH reads the optional attribute(OnTransitionTime) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -59025,7 +59576,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3hReadTheOptionalAttributeOffTransitionTimeInAttributeList_14() + CHIP_ERROR TestStep4gThReadsTheOptionalAttributeOffTransitionTimeInAttributeList_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -59034,9 +59585,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3h: Read the optional attribute(OffTransitionTime) in AttributeList: Error: %@", err); + NSLog(@"Step 4g: TH reads the optional attribute(OffTransitionTime) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3h: Read the optional attribute(OffTransitionTime) in AttributeList: Success"); + NSLog(@"Step 4g: TH reads the optional attribute(OffTransitionTime) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -59050,7 +59601,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3iReadTheOptionalAttributeDefaultMoveRateInAttributeList_15() + CHIP_ERROR TestStep4hThReadsTheOptionalAttributeDefaultMoveRateInAttributeList_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -59059,9 +59610,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3i: Read the optional attribute(DefaultMoveRate) in AttributeList: Error: %@", err); + NSLog(@"Step 4h: TH reads the optional attribute(DefaultMoveRate) in AttributeList: Error: %@", err); } else { - NSLog(@"Step 3i: Read the optional attribute(DefaultMoveRate) in AttributeList: Success"); + NSLog(@"Step 4h: TH reads the optional attribute(DefaultMoveRate) in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -59075,7 +59626,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAcceptedCommandList_16() + CHIP_ERROR TestStep6aThReadsFromTheDutTheAcceptedCommandListAttribute_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -59084,9 +59635,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6a: TH reads from the DUT the AcceptedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AcceptedCommandList: Success"); + NSLog(@"Step 6a: TH reads from the DUT the AcceptedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -59107,7 +59658,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4a1ReadTheFeatureDependentLVLSF02CommandInAcceptedCommandList_17() + CHIP_ERROR TestStep6a1ThReadsTheFeatureDependentLVLSF02CommandInAcceptedCommandList_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -59116,9 +59667,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a.1: Read the Feature-dependent(LVL.S.F02) command in AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6a.1: TH reads the Feature-dependent(LVL.S.F02) command in AcceptedCommandList: Error: %@", err); } else { - NSLog(@"Step 4a.1: Read the Feature-dependent(LVL.S.F02) command in AcceptedCommandList: Success"); + NSLog(@"Step 6a.1: TH reads the Feature-dependent(LVL.S.F02) command in AcceptedCommandList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -59132,7 +59683,7 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bReadTheGlobalAttributeGeneratedCommandList_18() + CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_19() { MTRBaseDevice * device = GetDevice("alpha"); @@ -59141,9 +59692,9 @@ class Test_TC_LVL_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4b: Read the global attribute: GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 4b: Read the global attribute: GeneratedCommandList: Success"); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -68250,7 +68801,7 @@ class Test_TC_LWM_2_1 : public TestCommandBridge { break; case 4: ChipLogProgress(chipTool, " ***** Test Step 4 : Step 5: Manually put the device in a state from which it will FAIL to transition to PIXIT.LWM.MODE_CHANGE_FAIL\n"); - if (ShouldSkip("LWM.S.M.CAN_TEST_MODE_FAILURE && PICS_SKIP_SAMPLE_APP")) { + if (ShouldSkip("LWM.S.M.CAN_TEST_MODE_FAILURE && LWM.S.M.CAN_MANUALLY_CONTROLLED && PICS_SKIP_SAMPLE_APP")) { NextTest(); return; } @@ -68258,7 +68809,7 @@ class Test_TC_LWM_2_1 : public TestCommandBridge { break; case 5: ChipLogProgress(chipTool, " ***** Test Step 5 : Step 6: TH reads from the DUT the CurrentMode attribute.\n"); - if (ShouldSkip("LWM.S.A0001")) { + if (ShouldSkip("LWM.S.A0001 && LWM.S.M.CAN_MANUALLY_CONTROLLED")) { NextTest(); return; } @@ -68282,7 +68833,7 @@ class Test_TC_LWM_2_1 : public TestCommandBridge { break; case 8: ChipLogProgress(chipTool, " ***** Test Step 8 : Step 9: Manually put the device in a state from which it will SUCCESSFULLY transition to PIXIT.LWM.MODE_CHANGE_OK\n"); - if (ShouldSkip("PICS_SKIP_SAMPLE_APP")) { + if (ShouldSkip("LWM.S.M.CAN_MANUALLY_CONTROLLED && PICS_SKIP_SAMPLE_APP")) { NextTest(); return; } @@ -68290,7 +68841,7 @@ class Test_TC_LWM_2_1 : public TestCommandBridge { break; case 9: ChipLogProgress(chipTool, " ***** Test Step 9 : Step 10: TH reads from the DUT the CurrentMode attribute.\n"); - if (ShouldSkip("LWM.S.A0001")) { + if (ShouldSkip("LWM.S.M.CAN_MANUALLY_CONTROLLED && LWM.S.A0001")) { NextTest(); return; } @@ -89311,20 +89862,20 @@ class Test_TC_PS_1_1 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Commission DUT to TH (can be skipped if done in a preceding test).\n"); + err = TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); - err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Test Harness Client reads ClusterRevision attribute.\n"); + err = TestStep2TestHarnessClientReadsClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: Read the global attribute: FeatureMap\n"); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: TH reads from the DUT the FeatureMap attribute.\n"); if (ShouldSkip(" !PS.S.F00 && !PS.S.F01 && !PS.S.F02 && !PS.S.F03 ")) { NextTest(); return; } - err = TestStep3aReadTheGlobalAttributeFeatureMap_2(); + err = TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: ChipLogProgress(chipTool, " ***** Test Step 3 : Step 3b: Given PS.S.F00(WIRED) ensure featuremap has the correct bit set\n"); @@ -89359,93 +89910,93 @@ class Test_TC_PS_1_1 : public TestCommandBridge { err = TestStep3dGivenPssf03replcEnsureFeaturemapHasTheCorrectBitSet_6(); break; case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 4: Test Harness Client reads AttributeList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4ReadTheGlobalAttributeAttributeList_7(); + err = TestStep4TestHarnessClientReadsAttributeListAttribute_7(); break; case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 4: Test Harness Client reads AttributeList attribute.\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4ReadTheGlobalAttributeAttributeList_8(); + err = TestStep4TestHarnessClientReadsAttributeListAttribute_8(); break; case 9: - ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4a: Read the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4a: TH reads the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList\n"); if (ShouldSkip("PS.S.F00")) { NextTest(); return; } - err = TestStep4aReadTheFeatureDependentPSSF00WiredAttributeInAttributeList_9(); + err = TestStep4aThReadsTheFeatureDependentPSSF00WiredAttributeInAttributeList_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4b: Read the Feature dependent(PS.S.F01-BAT) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4b: TH reads the Feature dependent(PS.S.F01-BAT) attribute in AttributeList\n"); if (ShouldSkip("PS.S.F01")) { NextTest(); return; } - err = TestStep4bReadTheFeatureDependentPSSF01BatAttributeInAttributeList_10(); + err = TestStep4bThReadsTheFeatureDependentPSSF01BatAttributeInAttributeList_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4c: Read the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4c: TH reads the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList\n"); if (ShouldSkip("PS.S.F02")) { NextTest(); return; } - err = TestStep4cReadTheFeatureDependentPSSF02RechgAttributeInAttributeList_11(); + err = TestStep4cThReadsTheFeatureDependentPSSF02RechgAttributeInAttributeList_11(); break; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4d: Read the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4d: TH reads the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList\n"); if (ShouldSkip("PS.S.F03")) { NextTest(); return; } - err = TestStep4dReadTheFeatureDependentPSSF03ReplcAttributeInAttributeList_12(); + err = TestStep4dThReadsTheFeatureDependentPSSF03ReplcAttributeInAttributeList_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5: Read the global attribute: AcceptedCommandList\n"); - err = TestStep5ReadTheGlobalAttributeAcceptedCommandList_13(); - break; - case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 6: Read the global attribute: GeneratedCommandList\n"); - err = TestStep6ReadTheGlobalAttributeGeneratedCommandList_14(); - break; - case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 7a: Read the global attribute: EventList\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5a: Test Harness Client reads EventList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED && !PS.S.E00 && !PS.S.E01 && !PS.S.E02 ")) { NextTest(); return; } NextTest(); return; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 7b: Read PS.S.E00(WiredFaultChange) event in EventList\n"); + case 14: + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 5b: TH reads PS.S.E00(WiredFaultChange) event in EventList\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED && PS.S.E00")) { NextTest(); return; } NextTest(); return; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 7c: Read PS.S.E01(BatFaultChange) event in EventList\n"); + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 5c: TH reads PS.S.E01(BatFaultChange) event in EventList\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED && PS.S.E01")) { NextTest(); return; } NextTest(); return; - case 18: - ChipLogProgress(chipTool, " ***** Test Step 18 : Step 7d: Read PS.S.E02(BatChargeFaultChange) event in EventList\n"); + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 5d: TH reads PS.S.E02(BatChargeFaultChange) event in EventList\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED && PS.S.E02")) { NextTest(); return; } NextTest(); return; + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 6: Test Harness Client reads AcceptedCommandList attribute.\n"); + err = TestStep6TestHarnessClientReadsAcceptedCommandListAttribute_17(); + break; + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 7: Test Harness Client reads GeneratedCommandList attribute.\n"); + err = TestStep7TestHarnessClientReadsGeneratedCommandListAttribute_18(); + break; } if (CHIP_NO_ERROR != err) { @@ -89531,7 +90082,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -89539,7 +90090,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2TestHarnessClientReadsClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89548,9 +90099,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: Test Harness Client reads ClusterRevision attribute.: Error: %@", err); } else { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: Test Harness Client reads ClusterRevision attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89567,7 +90118,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3aReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89576,9 +90127,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute.: Error: %@", err); } else { - NSLog(@"Step 3a: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89687,7 +90238,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheGlobalAttributeAttributeList_7() + CHIP_ERROR TestStep4TestHarnessClientReadsAttributeListAttribute_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89696,9 +90247,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4: Test Harness Client reads AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4: Test Harness Client reads AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89721,7 +90272,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheGlobalAttributeAttributeList_8() + CHIP_ERROR TestStep4TestHarnessClientReadsAttributeListAttribute_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89730,9 +90281,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4: Test Harness Client reads AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4: Test Harness Client reads AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89754,7 +90305,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheFeatureDependentPSSF00WiredAttributeInAttributeList_9() + CHIP_ERROR TestStep4aThReadsTheFeatureDependentPSSF00WiredAttributeInAttributeList_9() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89763,9 +90314,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4a: Read the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList: Success"); + NSLog(@"Step 4a: TH reads the Feature dependent(PS.S.F00-WIRED) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89779,7 +90330,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bReadTheFeatureDependentPSSF01BatAttributeInAttributeList_10() + CHIP_ERROR TestStep4bThReadsTheFeatureDependentPSSF01BatAttributeInAttributeList_10() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89788,9 +90339,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4b: Read the Feature dependent(PS.S.F01-BAT) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4b: TH reads the Feature dependent(PS.S.F01-BAT) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4b: Read the Feature dependent(PS.S.F01-BAT) attribute in AttributeList: Success"); + NSLog(@"Step 4b: TH reads the Feature dependent(PS.S.F01-BAT) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89806,7 +90357,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4cReadTheFeatureDependentPSSF02RechgAttributeInAttributeList_11() + CHIP_ERROR TestStep4cThReadsTheFeatureDependentPSSF02RechgAttributeInAttributeList_11() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89815,9 +90366,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4c: Read the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4c: TH reads the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4c: Read the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList: Success"); + NSLog(@"Step 4c: TH reads the Feature dependent(PS.S.F02-RECHG) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89832,7 +90383,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4dReadTheFeatureDependentPSSF03ReplcAttributeInAttributeList_12() + CHIP_ERROR TestStep4dThReadsTheFeatureDependentPSSF03ReplcAttributeInAttributeList_12() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89841,9 +90392,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4d: Read the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4d: TH reads the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4d: Read the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList: Success"); + NSLog(@"Step 4d: TH reads the Feature dependent(PS.S.F03-REPLC) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89858,7 +90409,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5ReadTheGlobalAttributeAcceptedCommandList_13() + CHIP_ERROR TestStep6TestHarnessClientReadsAcceptedCommandListAttribute_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89867,9 +90418,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5: Read the global attribute: AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6: Test Harness Client reads AcceptedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 5: Read the global attribute: AcceptedCommandList: Success"); + NSLog(@"Step 6: Test Harness Client reads AcceptedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -89886,7 +90437,7 @@ class Test_TC_PS_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ReadTheGlobalAttributeGeneratedCommandList_14() + CHIP_ERROR TestStep7TestHarnessClientReadsGeneratedCommandListAttribute_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -89895,9 +90446,9 @@ class Test_TC_PS_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6: Read the global attribute: GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7: Test Harness Client reads GeneratedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 6: Read the global attribute: GeneratedCommandList: Success"); + NSLog(@"Step 7: Test Harness Client reads GeneratedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -103360,20 +103911,20 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Commission DUT to TH (can be skipped if done in a preceding test).\n"); + err = TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); - err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the ClusterRevision attribute.\n"); + err = TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: Read the global attribute: FeatureMap\n"); + ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3a: TH reads from the DUT the FeatureMap attribute.\n"); if (ShouldSkip("!TSTAT.S.F00 && !TSTAT.S.F01 && !TSTAT.S.F02 && !TSTAT.S.F03 && !TSTAT.S.F04 && !TSTAT.S.F05")) { NextTest(); return; } - err = TestStep3aReadTheGlobalAttributeFeatureMap_2(); + err = TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2(); break; case 3: ChipLogProgress(chipTool, " ***** Test Step 3 : Step 3b: Given TSTAT.S.F00(HEAT ensure featuremap has the correct bit set\n"); @@ -103432,401 +103983,401 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { err = TestStep3hGivenTstatsf06ltneEnsureFeaturemapHasTheCorrectBitSet_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4a: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_10(); + err = TestStep4aThReadsFromTheDutTheAttributeListAttribute_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4a: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4a: TH reads from the DUT the AttributeList attribute.\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4aReadTheGlobalAttributeAttributeList_11(); + err = TestStep4aThReadsFromTheDutTheAttributeListAttribute_11(); break; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4b: Read the Feature dependent(TSTAT.S.F00(HEAT)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4b: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00")) { NextTest(); return; } - err = TestStep4bReadTheFeatureDependentTSTATSF00HEATAttributeInAttributeList_12(); + err = TestStep4bThReadsTheFeatureDependentTSTATSF00HEATAttributeInAttributeList_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 4c: Read the Feature dependent(TSTAT.S.F01(COOL)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 4c: TH reads the Feature dependent(TSTAT.S.F01(COOL)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01")) { NextTest(); return; } - err = TestStep4cReadTheFeatureDependentTSTATSF01COOLAttributeInAttributeList_13(); + err = TestStep4cThReadsTheFeatureDependentTSTATSF01COOLAttributeInAttributeList_13(); break; case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 4d: Read the Feature dependent(TSTAT.S.F02(OCC)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 4d: TH reads the Feature dependent(TSTAT.S.F02(OCC)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F02")) { NextTest(); return; } - err = TestStep4dReadTheFeatureDependentTSTATSF02OCCAttributeInAttributeList_14(); + err = TestStep4dThReadsTheFeatureDependentTSTATSF02OCCAttributeInAttributeList_14(); break; case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 4e: Read the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 4e: TH reads the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.F02")) { NextTest(); return; } - err = TestStep4eReadTheFeatureDependentTSTATSF00HEATTstatsf02occAttributeInAttributeList_15(); + err = TestStep4eThReadsTheFeatureDependentTSTATSF00HEATTstatsf02occAttributeInAttributeList_15(); break; case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 4f: Read the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 4f: TH reads the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.F02")) { NextTest(); return; } - err = TestStep4fReadTheFeatureDependentTSTATSF01COOLTstatsf02occAttributeInAttributeList_16(); + err = TestStep4fThReadsTheFeatureDependentTSTATSF01COOLTstatsf02occAttributeInAttributeList_16(); break; case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 4g: Read the Feature dependent(TSTAT.S.F05(AUTO)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 4g: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F05")) { NextTest(); return; } - err = TestStep4gReadTheFeatureDependentTSTATSF05AUTOAttributeInAttributeList_17(); + err = TestStep4gThReadsTheFeatureDependentTSTATSF05AUTOAttributeInAttributeList_17(); break; case 18: - ChipLogProgress(chipTool, " ***** Test Step 18 : Step 4h: Read the Feature dependent(TSTAT.S.F03(SCH)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 4h: TH reads the Feature dependent(TSTAT.S.F03(SCH)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F03")) { NextTest(); return; } - err = TestStep4hReadTheFeatureDependentTSTATSF03SCHAttributeInAttributeList_18(); + err = TestStep4hThReadsTheFeatureDependentTSTATSF03SCHAttributeInAttributeList_18(); break; case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 4i: Read the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 4i: TH reads the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F04")) { NextTest(); return; } - err = TestStep4iReadTheFeatureDependentTSTATSF04SBAttributeInAttributeList_19(); + err = TestStep4iThReadsTheFeatureDependentTSTATSF04SBAttributeInAttributeList_19(); break; case 20: - ChipLogProgress(chipTool, " ***** Test Step 20 : Step 4j: Read the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 20 : Step 4j: TH reads the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F04 && TSTAT.S.F02")) { NextTest(); return; } - err = TestStep4jReadTheFeatureDependentTSTATSF04SBTstatsf02occAttributeInAttributeList_20(); + err = TestStep4jThReadsTheFeatureDependentTSTATSF04SBTstatsf02occAttributeInAttributeList_20(); break; case 21: - ChipLogProgress(chipTool, " ***** Test Step 21 : Step 4k: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 21 : Step 4k: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0001")) { NextTest(); return; } - err = TestStep4kReadTheOptionalAttributeInAttributeList_21(); + err = TestStep4kThReadsTheOptionalAttributeInAttributeList_21(); break; case 22: - ChipLogProgress(chipTool, " ***** Test Step 22 : Step 4l: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 22 : Step 4l: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0009")) { NextTest(); return; } - err = TestStep4lReadTheOptionalAttributeInAttributeList_22(); + err = TestStep4lThReadsTheOptionalAttributeInAttributeList_22(); break; case 23: - ChipLogProgress(chipTool, " ***** Test Step 23 : Step 4m: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 23 : Step 4m: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0010")) { NextTest(); return; } - err = TestStep4mReadTheOptionalAttributeInAttributeList_23(); + err = TestStep4mThReadsTheOptionalAttributeInAttributeList_23(); break; case 24: - ChipLogProgress(chipTool, " ***** Test Step 24 : Step 4n: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 24 : Step 4n: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A001a")) { NextTest(); return; } - err = TestStep4nReadTheOptionalAttributeInAttributeList_24(); + err = TestStep4nThReadsTheOptionalAttributeInAttributeList_24(); break; case 25: - ChipLogProgress(chipTool, " ***** Test Step 25 : Step 4o: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 25 : Step 4o: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A001d")) { NextTest(); return; } - err = TestStep4oReadTheOptionalAttributeInAttributeList_25(); + err = TestStep4oThReadsTheOptionalAttributeInAttributeList_25(); break; case 26: - ChipLogProgress(chipTool, " ***** Test Step 26 : Step 4p: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 26 : Step 4p: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0023")) { NextTest(); return; } - err = TestStep4pReadTheOptionalAttributeInAttributeList_26(); + err = TestStep4pThReadsTheOptionalAttributeInAttributeList_26(); break; case 27: - ChipLogProgress(chipTool, " ***** Test Step 27 : Step 4q: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 27 : Step 4q: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0024")) { NextTest(); return; } - err = TestStep4qReadTheOptionalAttributeInAttributeList_27(); + err = TestStep4qThReadsTheOptionalAttributeInAttributeList_27(); break; case 28: - ChipLogProgress(chipTool, " ***** Test Step 28 : Step 4r: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 28 : Step 4r: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0025")) { NextTest(); return; } - err = TestStep4rReadTheOptionalAttributeInAttributeList_28(); + err = TestStep4rThReadsTheOptionalAttributeInAttributeList_28(); break; case 29: - ChipLogProgress(chipTool, " ***** Test Step 29 : Step 4s: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 29 : Step 4s: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0029")) { NextTest(); return; } - err = TestStep4sReadTheOptionalAttributeInAttributeList_29(); + err = TestStep4sThReadsTheOptionalAttributeInAttributeList_29(); break; case 30: - ChipLogProgress(chipTool, " ***** Test Step 30 : Step 4t: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 30 : Step 4t: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0030")) { NextTest(); return; } - err = TestStep4tReadTheOptionalAttributeInAttributeList_30(); + err = TestStep4tThReadsTheOptionalAttributeInAttributeList_30(); break; case 31: - ChipLogProgress(chipTool, " ***** Test Step 31 : Step 4u: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 31 : Step 4u: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0031")) { NextTest(); return; } - err = TestStep4uReadTheOptionalAttributeInAttributeList_31(); + err = TestStep4uThReadsTheOptionalAttributeInAttributeList_31(); break; case 32: - ChipLogProgress(chipTool, " ***** Test Step 32 : Step 4x: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 32 : Step 4x: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0032")) { NextTest(); return; } - err = TestStep4xReadTheOptionalAttributeInAttributeList_32(); + err = TestStep4xThReadsTheOptionalAttributeInAttributeList_32(); break; case 33: - ChipLogProgress(chipTool, " ***** Test Step 33 : Step 5y: Read the optional attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 33 : Step 4y: TH reads the optional attribute: AttributeList\n"); if (ShouldSkip("TSTAT.S.A003a")) { NextTest(); return; } - err = TestStep5yReadTheOptionalAttributeAttributeList_33(); + err = TestStep4yThReadsTheOptionalAttributeAttributeList_33(); break; case 34: - ChipLogProgress(chipTool, " ***** Test Step 34 : Step 4z: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 34 : Step 4z: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0040")) { NextTest(); return; } - err = TestStep4zReadTheOptionalAttributeInAttributeList_34(); + err = TestStep4zThReadsTheOptionalAttributeInAttributeList_34(); break; case 35: - ChipLogProgress(chipTool, " ***** Test Step 35 : Step 4A: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 35 : Step 4A: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0041")) { NextTest(); return; } - err = TestStep4aReadTheOptionalAttributeInAttributeList_35(); + err = TestStep4aThReadsTheOptionalAttributeInAttributeList_35(); break; case 36: - ChipLogProgress(chipTool, " ***** Test Step 36 : Step 4B: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 36 : Step 4B: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0042")) { NextTest(); return; } - err = TestStep4bReadTheOptionalAttributeInAttributeList_36(); + err = TestStep4bThReadsTheOptionalAttributeInAttributeList_36(); break; case 37: - ChipLogProgress(chipTool, " ***** Test Step 37 : Step 4C: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 37 : Step 4C: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0043")) { NextTest(); return; } - err = TestStep4cReadTheOptionalAttributeInAttributeList_37(); + err = TestStep4cThReadsTheOptionalAttributeInAttributeList_37(); break; case 38: - ChipLogProgress(chipTool, " ***** Test Step 38 : Step 5D: Read the optional attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 38 : Step 4D: TH reads the optional attribute: AttributeList\n"); if (ShouldSkip("TSTAT.S.A0044")) { NextTest(); return; } - err = TestStep5dReadTheOptionalAttributeAttributeList_38(); + err = TestStep4dThReadsTheOptionalAttributeAttributeList_38(); break; case 39: - ChipLogProgress(chipTool, " ***** Test Step 39 : Step 4E: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 39 : Step 4E: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0045")) { NextTest(); return; } - err = TestStep4eReadTheOptionalAttributeInAttributeList_39(); + err = TestStep4eThReadsTheOptionalAttributeInAttributeList_39(); break; case 40: - ChipLogProgress(chipTool, " ***** Test Step 40 : Step 4F: Read the optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 40 : Step 4F: TH reads the optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.A0046")) { NextTest(); return; } - err = TestStep4fReadTheOptionalAttributeInAttributeList_40(); + err = TestStep4fThReadsTheOptionalAttributeInAttributeList_40(); break; case 41: - ChipLogProgress(chipTool, " ***** Test Step 41 : Step 5G: Read the optional attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 41 : Step 4g: TH reads the optional attribute: AttributeList\n"); if (ShouldSkip("TSTAT.S.A0047")) { NextTest(); return; } - err = TestStep5gReadTheOptionalAttributeAttributeList_41(); + err = TestStep4gThReadsTheOptionalAttributeAttributeList_41(); break; case 42: - ChipLogProgress(chipTool, " ***** Test Step 42 : Step 4H: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 42 : Step 4H: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0003")) { NextTest(); return; } - err = TestStep4hReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_42(); + err = TestStep4hThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_42(); break; case 43: - ChipLogProgress(chipTool, " ***** Test Step 43 : Step 4I: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 43 : Step 4I: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0004")) { NextTest(); return; } - err = TestStep4iReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_43(); + err = TestStep4iThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_43(); break; case 44: - ChipLogProgress(chipTool, " ***** Test Step 44 : Step 4J: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 44 : Step 4J: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0008")) { NextTest(); return; } - err = TestStep4jReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_44(); + err = TestStep4jThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_44(); break; case 45: - ChipLogProgress(chipTool, " ***** Test Step 45 : Step 4K: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 45 : Step 4K: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) { NextTest(); return; } - err = TestStep4kReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_45(); + err = TestStep4kThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_45(); break; case 46: - ChipLogProgress(chipTool, " ***** Test Step 46 : Step 4L: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 46 : Step 4L: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016")) { NextTest(); return; } - err = TestStep4lReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_46(); + err = TestStep4lThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_46(); break; case 47: - ChipLogProgress(chipTool, " ***** Test Step 47 : Step 4M: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 47 : Step 4M: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0005")) { NextTest(); return; } - err = TestStep4mReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_47(); + err = TestStep4mThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_47(); break; case 48: - ChipLogProgress(chipTool, " ***** Test Step 48 : Step 4N: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 48 : Step 4N: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0007")) { NextTest(); return; } - err = TestStep4nReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_48(); + err = TestStep4nThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_48(); break; case 49: - ChipLogProgress(chipTool, " ***** Test Step 49 : Step 4O: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 49 : Step 4O: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0007")) { NextTest(); return; } - err = TestStep4oReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_49(); + err = TestStep4oThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_49(); break; case 50: - ChipLogProgress(chipTool, " ***** Test Step 50 : Step 4P: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 50 : Step 4P: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) { NextTest(); return; } - err = TestStep4pReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_50(); + err = TestStep4pThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_50(); break; case 51: - ChipLogProgress(chipTool, " ***** Test Step 51 : Step 4Q: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 51 : Step 4Q: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) { NextTest(); return; } - err = TestStep4qReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_51(); + err = TestStep4qThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_51(); break; case 52: - ChipLogProgress(chipTool, " ***** Test Step 52 : Step 4R: Read the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 52 : Step 4R: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList\n"); if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.A001e")) { NextTest(); return; } - err = TestStep4rReadTheFeatureDependentTSTATSF05AUTOOptionalAttributeInAttributeList_52(); + err = TestStep4rThReadsTheFeatureDependentTSTATSF05AUTOOptionalAttributeInAttributeList_52(); break; case 53: - ChipLogProgress(chipTool, " ***** Test Step 53 : Step 5a: Read the mandatory commands in AcceptedCommandList\n"); - err = TestStep5aReadTheMandatoryCommandsInAcceptedCommandList_53(); - break; - case 54: - ChipLogProgress(chipTool, " ***** Test Step 54 : Step 5b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList\n"); - if (ShouldSkip("TSTAT.S.F03")) { + ChipLogProgress(chipTool, " ***** Test Step 53 : Step 5: TH reads EventList attribute from the DUT.\n"); + if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep5bReadFeatureDependentTSTATSF03SCHCommandsInAcceptedCommandList_54(); + NextTest(); + return; + case 54: + ChipLogProgress(chipTool, " ***** Test Step 54 : Step 6a: TH reads from the DUT the AcceptedCommandList attribute.\n"); + err = TestStep6aThReadsFromTheDutTheAcceptedCommandListAttribute_54(); break; case 55: - ChipLogProgress(chipTool, " ***** Test Step 55 : Step 5c: Read the optional (GetRelayStatusLog) command in AcceptedCommandList\n"); - if (ShouldSkip("TSTAT.S.C04.Rsp")) { + ChipLogProgress(chipTool, " ***** Test Step 55 : Step 6b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList\n"); + if (ShouldSkip("TSTAT.S.F03")) { NextTest(); return; } - err = TestStep5cReadTheOptionalGetRelayStatusLogCommandInAcceptedCommandList_55(); + err = TestStep6bThReadsFeatureDependentTSTATSF03SCHCommandsInAcceptedCommandList_55(); break; case 56: - ChipLogProgress(chipTool, " ***** Test Step 56 : Step 6a: Read the global attribute: GeneratedCommandList\n"); - if (ShouldSkip(" !TSTAT.S.C04.Rsp && !TSTAT.S.C02.Rsp ")) { + ChipLogProgress(chipTool, " ***** Test Step 56 : Step 6c: TH reads the optional (GetRelayStatusLog) command in AcceptedCommandList\n"); + if (ShouldSkip("TSTAT.S.C04.Rsp")) { NextTest(); return; } - err = TestStep6aReadTheGlobalAttributeGeneratedCommandList_56(); + err = TestStep6cThReadsTheOptionalGetRelayStatusLogCommandInAcceptedCommandList_56(); break; case 57: - ChipLogProgress(chipTool, " ***** Test Step 57 : Step 6b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList\n"); - if (ShouldSkip("TSTAT.S.F03")) { + ChipLogProgress(chipTool, " ***** Test Step 57 : Step 7a: TH reads from the DUT the GeneratedCommandList attribute.\n"); + if (ShouldSkip(" !TSTAT.S.C04.Rsp && !TSTAT.S.C02.Rsp ")) { NextTest(); return; } - err = TestStep6bReadFeatureDependentTSTATSF03SCHCommandsInGeneratedCommandList_57(); + err = TestStep7aThReadsFromTheDutTheGeneratedCommandListAttribute_57(); break; case 58: - ChipLogProgress(chipTool, " ***** Test Step 58 : Step 6c: Read optional command (GetRelayStatusLogResponse) in GeneratedCommandList\n"); - if (ShouldSkip("TSTAT.S.C04.Rsp")) { + ChipLogProgress(chipTool, " ***** Test Step 58 : Step 7b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList\n"); + if (ShouldSkip("TSTAT.S.F03")) { NextTest(); return; } - err = TestStep6cReadOptionalCommandGetRelayStatusLogResponseInGeneratedCommandList_58(); + err = TestStep7bThReadsFeatureDependentTSTATSF03SCHCommandsInGeneratedCommandList_58(); break; case 59: - ChipLogProgress(chipTool, " ***** Test Step 59 : Step 7: Read EventList attribute from the DUT.\n"); - if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { + ChipLogProgress(chipTool, " ***** Test Step 59 : Step 7c: TH reads optional command (GetRelayStatusLogResponse) in GeneratedCommandList\n"); + if (ShouldSkip("TSTAT.S.C04.Rsp")) { NextTest(); return; } - NextTest(); - return; + err = TestStep7cThReadsOptionalCommandGetRelayStatusLogResponseInGeneratedCommandList_59(); + break; } if (CHIP_NO_ERROR != err) { @@ -104035,7 +104586,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -104043,7 +104594,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() + CHIP_ERROR TestStep2ThReadsFromTheDutTheClusterRevisionAttribute_1() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104052,9 +104603,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Error: %@", err); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Error: %@", err); } else { - NSLog(@"Step 2: Read the global attribute: ClusterRevision: Success"); + NSLog(@"Step 2: TH reads from the DUT the ClusterRevision attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104071,7 +104622,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3aReadTheGlobalAttributeFeatureMap_2() + CHIP_ERROR TestStep3aThReadsFromTheDutTheFeatureMapAttribute_2() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104080,9 +104631,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a: Read the global attribute: FeatureMap: Error: %@", err); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute.: Error: %@", err); } else { - NSLog(@"Step 3a: Read the global attribute: FeatureMap: Success"); + NSLog(@"Step 3a: TH reads from the DUT the FeatureMap attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104260,7 +104811,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_10() + CHIP_ERROR TestStep4aThReadsFromTheDutTheAttributeListAttribute_10() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104269,9 +104820,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104293,7 +104844,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_11() + CHIP_ERROR TestStep4aThReadsFromTheDutTheAttributeListAttribute_11() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104302,9 +104853,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Error: %@", err); } else { - NSLog(@"Step 4a: Read the global attribute: AttributeList: Success"); + NSLog(@"Step 4a: TH reads from the DUT the AttributeList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104325,7 +104876,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bReadTheFeatureDependentTSTATSF00HEATAttributeInAttributeList_12() + CHIP_ERROR TestStep4bThReadsTheFeatureDependentTSTATSF00HEATAttributeInAttributeList_12() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104334,9 +104885,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4b: Read the Feature dependent(TSTAT.S.F00(HEAT)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4b: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4b: Read the Feature dependent(TSTAT.S.F00(HEAT)) attribute in AttributeList: Success"); + NSLog(@"Step 4b: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104350,7 +104901,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4cReadTheFeatureDependentTSTATSF01COOLAttributeInAttributeList_13() + CHIP_ERROR TestStep4cThReadsTheFeatureDependentTSTATSF01COOLAttributeInAttributeList_13() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104359,9 +104910,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4c: Read the Feature dependent(TSTAT.S.F01(COOL)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4c: TH reads the Feature dependent(TSTAT.S.F01(COOL)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4c: Read the Feature dependent(TSTAT.S.F01(COOL)) attribute in AttributeList: Success"); + NSLog(@"Step 4c: TH reads the Feature dependent(TSTAT.S.F01(COOL)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104375,7 +104926,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4dReadTheFeatureDependentTSTATSF02OCCAttributeInAttributeList_14() + CHIP_ERROR TestStep4dThReadsTheFeatureDependentTSTATSF02OCCAttributeInAttributeList_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104384,9 +104935,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4d: Read the Feature dependent(TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4d: TH reads the Feature dependent(TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4d: Read the Feature dependent(TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); + NSLog(@"Step 4d: TH reads the Feature dependent(TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104400,7 +104951,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4eReadTheFeatureDependentTSTATSF00HEATTstatsf02occAttributeInAttributeList_15() + CHIP_ERROR TestStep4eThReadsTheFeatureDependentTSTATSF00HEATTstatsf02occAttributeInAttributeList_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104409,9 +104960,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4e: Read the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4e: TH reads the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4e: Read the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); + NSLog(@"Step 4e: TH reads the Feature dependent(TSTAT.S.F00(HEAT) & TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104425,7 +104976,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4fReadTheFeatureDependentTSTATSF01COOLTstatsf02occAttributeInAttributeList_16() + CHIP_ERROR TestStep4fThReadsTheFeatureDependentTSTATSF01COOLTstatsf02occAttributeInAttributeList_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104434,9 +104985,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4f: Read the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4f: TH reads the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4f: Read the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); + NSLog(@"Step 4f: TH reads the Feature dependent(TSTAT.S.F01(COOL) & TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104450,7 +105001,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4gReadTheFeatureDependentTSTATSF05AUTOAttributeInAttributeList_17() + CHIP_ERROR TestStep4gThReadsTheFeatureDependentTSTATSF05AUTOAttributeInAttributeList_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104459,9 +105010,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4g: Read the Feature dependent(TSTAT.S.F05(AUTO)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4g: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4g: Read the Feature dependent(TSTAT.S.F05(AUTO)) attribute in AttributeList: Success"); + NSLog(@"Step 4g: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104477,7 +105028,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4hReadTheFeatureDependentTSTATSF03SCHAttributeInAttributeList_18() + CHIP_ERROR TestStep4hThReadsTheFeatureDependentTSTATSF03SCHAttributeInAttributeList_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104486,9 +105037,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4h: Read the Feature dependent(TSTAT.S.F03(SCH)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4h: TH reads the Feature dependent(TSTAT.S.F03(SCH)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4h: Read the Feature dependent(TSTAT.S.F03(SCH)) attribute in AttributeList: Success"); + NSLog(@"Step 4h: TH reads the Feature dependent(TSTAT.S.F03(SCH)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104504,7 +105055,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4iReadTheFeatureDependentTSTATSF04SBAttributeInAttributeList_19() + CHIP_ERROR TestStep4iThReadsTheFeatureDependentTSTATSF04SBAttributeInAttributeList_19() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104513,9 +105064,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4i: Read the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4i: TH reads the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4i: Read the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList: Success"); + NSLog(@"Step 4i: TH reads the Feature dependent(TSTAT.S.F04(SB)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104531,7 +105082,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4jReadTheFeatureDependentTSTATSF04SBTstatsf02occAttributeInAttributeList_20() + CHIP_ERROR TestStep4jThReadsTheFeatureDependentTSTATSF04SBTstatsf02occAttributeInAttributeList_20() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104540,9 +105091,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4j: Read the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4j: TH reads the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4j: Read the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); + NSLog(@"Step 4j: TH reads the Feature dependent(TSTAT.S.F04(SB) & TSTAT.S.F02(OCC)) attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104558,7 +105109,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4kReadTheOptionalAttributeInAttributeList_21() + CHIP_ERROR TestStep4kThReadsTheOptionalAttributeInAttributeList_21() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104567,9 +105118,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4k: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4k: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4k: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4k: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104583,7 +105134,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4lReadTheOptionalAttributeInAttributeList_22() + CHIP_ERROR TestStep4lThReadsTheOptionalAttributeInAttributeList_22() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104592,9 +105143,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4l: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4l: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4l: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4l: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104608,7 +105159,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4mReadTheOptionalAttributeInAttributeList_23() + CHIP_ERROR TestStep4mThReadsTheOptionalAttributeInAttributeList_23() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104617,9 +105168,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4m: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4m: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4m: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4m: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104633,7 +105184,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4nReadTheOptionalAttributeInAttributeList_24() + CHIP_ERROR TestStep4nThReadsTheOptionalAttributeInAttributeList_24() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104642,9 +105193,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4n: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4n: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4n: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4n: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104658,7 +105209,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4oReadTheOptionalAttributeInAttributeList_25() + CHIP_ERROR TestStep4oThReadsTheOptionalAttributeInAttributeList_25() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104667,9 +105218,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4o: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4o: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4o: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4o: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104683,7 +105234,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4pReadTheOptionalAttributeInAttributeList_26() + CHIP_ERROR TestStep4pThReadsTheOptionalAttributeInAttributeList_26() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104692,9 +105243,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4p: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4p: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4p: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4p: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104708,7 +105259,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4qReadTheOptionalAttributeInAttributeList_27() + CHIP_ERROR TestStep4qThReadsTheOptionalAttributeInAttributeList_27() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104717,9 +105268,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4q: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4q: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4q: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4q: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104733,7 +105284,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4rReadTheOptionalAttributeInAttributeList_28() + CHIP_ERROR TestStep4rThReadsTheOptionalAttributeInAttributeList_28() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104742,9 +105293,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4r: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4r: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4r: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4r: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104758,7 +105309,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4sReadTheOptionalAttributeInAttributeList_29() + CHIP_ERROR TestStep4sThReadsTheOptionalAttributeInAttributeList_29() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104767,9 +105318,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4s: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4s: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4s: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4s: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104783,7 +105334,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4tReadTheOptionalAttributeInAttributeList_30() + CHIP_ERROR TestStep4tThReadsTheOptionalAttributeInAttributeList_30() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104792,9 +105343,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4t: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4t: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4t: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4t: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104808,7 +105359,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4uReadTheOptionalAttributeInAttributeList_31() + CHIP_ERROR TestStep4uThReadsTheOptionalAttributeInAttributeList_31() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104817,9 +105368,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4u: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4u: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4u: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4u: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104833,7 +105384,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4xReadTheOptionalAttributeInAttributeList_32() + CHIP_ERROR TestStep4xThReadsTheOptionalAttributeInAttributeList_32() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104842,9 +105393,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4x: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4x: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4x: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4x: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104858,7 +105409,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5yReadTheOptionalAttributeAttributeList_33() + CHIP_ERROR TestStep4yThReadsTheOptionalAttributeAttributeList_33() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104867,9 +105418,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5y: Read the optional attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4y: TH reads the optional attribute: AttributeList: Error: %@", err); } else { - NSLog(@"Step 5y: Read the optional attribute: AttributeList: Success"); + NSLog(@"Step 4y: TH reads the optional attribute: AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104883,7 +105434,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4zReadTheOptionalAttributeInAttributeList_34() + CHIP_ERROR TestStep4zThReadsTheOptionalAttributeInAttributeList_34() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104892,9 +105443,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4z: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4z: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4z: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4z: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104908,7 +105459,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aReadTheOptionalAttributeInAttributeList_35() + CHIP_ERROR TestStep4aThReadsTheOptionalAttributeInAttributeList_35() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104917,9 +105468,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4A: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4A: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4A: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4A: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104933,7 +105484,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bReadTheOptionalAttributeInAttributeList_36() + CHIP_ERROR TestStep4bThReadsTheOptionalAttributeInAttributeList_36() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104942,9 +105493,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4B: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4B: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4B: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4B: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104958,7 +105509,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4cReadTheOptionalAttributeInAttributeList_37() + CHIP_ERROR TestStep4cThReadsTheOptionalAttributeInAttributeList_37() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104967,9 +105518,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4C: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4C: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4C: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4C: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -104983,7 +105534,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5dReadTheOptionalAttributeAttributeList_38() + CHIP_ERROR TestStep4dThReadsTheOptionalAttributeAttributeList_38() { MTRBaseDevice * device = GetDevice("alpha"); @@ -104992,9 +105543,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5D: Read the optional attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4D: TH reads the optional attribute: AttributeList: Error: %@", err); } else { - NSLog(@"Step 5D: Read the optional attribute: AttributeList: Success"); + NSLog(@"Step 4D: TH reads the optional attribute: AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105008,7 +105559,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4eReadTheOptionalAttributeInAttributeList_39() + CHIP_ERROR TestStep4eThReadsTheOptionalAttributeInAttributeList_39() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105017,9 +105568,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4E: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4E: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4E: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4E: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105033,7 +105584,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4fReadTheOptionalAttributeInAttributeList_40() + CHIP_ERROR TestStep4fThReadsTheOptionalAttributeInAttributeList_40() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105042,9 +105593,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4F: Read the optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4F: TH reads the optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4F: Read the optional attribute in AttributeList: Success"); + NSLog(@"Step 4F: TH reads the optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105058,7 +105609,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5gReadTheOptionalAttributeAttributeList_41() + CHIP_ERROR TestStep4gThReadsTheOptionalAttributeAttributeList_41() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105067,9 +105618,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5G: Read the optional attribute: AttributeList: Error: %@", err); + NSLog(@"Step 4g: TH reads the optional attribute: AttributeList: Error: %@", err); } else { - NSLog(@"Step 5G: Read the optional attribute: AttributeList: Success"); + NSLog(@"Step 4g: TH reads the optional attribute: AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105083,7 +105634,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4hReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_42() + CHIP_ERROR TestStep4hThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_42() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105092,9 +105643,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4H: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4H: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4H: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4H: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105108,7 +105659,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4iReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_43() + CHIP_ERROR TestStep4iThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_43() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105117,9 +105668,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4I: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4I: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4I: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4I: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105133,7 +105684,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4jReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_44() + CHIP_ERROR TestStep4jThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_44() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105142,9 +105693,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4J: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4J: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4J: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4J: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105158,7 +105709,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4kReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_45() + CHIP_ERROR TestStep4kThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_45() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105167,9 +105718,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4K: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4K: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4K: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4K: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105183,7 +105734,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4lReadTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_46() + CHIP_ERROR TestStep4lThReadsTheFeatureDependentTSTATSF00HEATOptionalAttributeInAttributeList_46() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105192,9 +105743,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4L: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4L: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4L: Read the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4L: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105208,7 +105759,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4mReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_47() + CHIP_ERROR TestStep4mThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_47() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105217,9 +105768,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4M: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4M: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4M: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4M: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105233,7 +105784,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4nReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_48() + CHIP_ERROR TestStep4nThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_48() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105242,9 +105793,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4N: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4N: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4N: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4N: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105258,7 +105809,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4oReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_49() + CHIP_ERROR TestStep4oThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_49() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105267,9 +105818,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4O: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4O: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4O: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4O: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105283,7 +105834,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4pReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_50() + CHIP_ERROR TestStep4pThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_50() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105292,9 +105843,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4P: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4P: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4P: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4P: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105308,7 +105859,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4qReadTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_51() + CHIP_ERROR TestStep4qThReadsTheFeatureDependentTSTATSF01COOLOptionalAttributeInAttributeList_51() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105317,9 +105868,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4Q: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4Q: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4Q: Read the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4Q: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105333,7 +105884,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4rReadTheFeatureDependentTSTATSF05AUTOOptionalAttributeInAttributeList_52() + CHIP_ERROR TestStep4rThReadsTheFeatureDependentTSTATSF05AUTOOptionalAttributeInAttributeList_52() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105342,9 +105893,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4R: Read the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList: Error: %@", err); + NSLog(@"Step 4R: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList: Error: %@", err); } else { - NSLog(@"Step 4R: Read the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList: Success"); + NSLog(@"Step 4R: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) optional attribute in AttributeList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105358,7 +105909,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5aReadTheMandatoryCommandsInAcceptedCommandList_53() + CHIP_ERROR TestStep6aThReadsFromTheDutTheAcceptedCommandListAttribute_54() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105367,9 +105918,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5a: Read the mandatory commands in AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6a: TH reads from the DUT the AcceptedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 5a: Read the mandatory commands in AcceptedCommandList: Success"); + NSLog(@"Step 6a: TH reads from the DUT the AcceptedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105383,7 +105934,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5bReadFeatureDependentTSTATSF03SCHCommandsInAcceptedCommandList_54() + CHIP_ERROR TestStep6bThReadsFeatureDependentTSTATSF03SCHCommandsInAcceptedCommandList_55() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105392,9 +105943,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList: Error: %@", err); } else { - NSLog(@"Step 5b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList: Success"); + NSLog(@"Step 6b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in AcceptedCommandList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105410,7 +105961,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5cReadTheOptionalGetRelayStatusLogCommandInAcceptedCommandList_55() + CHIP_ERROR TestStep6cThReadsTheOptionalGetRelayStatusLogCommandInAcceptedCommandList_56() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105419,9 +105970,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5c: Read the optional (GetRelayStatusLog) command in AcceptedCommandList: Error: %@", err); + NSLog(@"Step 6c: TH reads the optional (GetRelayStatusLog) command in AcceptedCommandList: Error: %@", err); } else { - NSLog(@"Step 5c: Read the optional (GetRelayStatusLog) command in AcceptedCommandList: Success"); + NSLog(@"Step 6c: TH reads the optional (GetRelayStatusLog) command in AcceptedCommandList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105435,7 +105986,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6aReadTheGlobalAttributeGeneratedCommandList_56() + CHIP_ERROR TestStep7aThReadsFromTheDutTheGeneratedCommandListAttribute_57() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105444,9 +105995,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6a: Read the global attribute: GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7a: TH reads from the DUT the GeneratedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 6a: Read the global attribute: GeneratedCommandList: Success"); + NSLog(@"Step 7a: TH reads from the DUT the GeneratedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105463,7 +106014,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6bReadFeatureDependentTSTATSF03SCHCommandsInGeneratedCommandList_57() + CHIP_ERROR TestStep7bThReadsFeatureDependentTSTATSF03SCHCommandsInGeneratedCommandList_58() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105472,9 +106023,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList: Error: %@", err); } else { - NSLog(@"Step 6b: Read Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList: Success"); + NSLog(@"Step 7b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in GeneratedCommandList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105488,7 +106039,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6cReadOptionalCommandGetRelayStatusLogResponseInGeneratedCommandList_58() + CHIP_ERROR TestStep7cThReadsOptionalCommandGetRelayStatusLogResponseInGeneratedCommandList_59() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105497,9 +106048,9 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6c: Read optional command (GetRelayStatusLogResponse) in GeneratedCommandList: Error: %@", err); + NSLog(@"Step 7c: TH reads optional command (GetRelayStatusLogResponse) in GeneratedCommandList: Error: %@", err); } else { - NSLog(@"Step 6c: Read optional command (GetRelayStatusLogResponse) in GeneratedCommandList: Success"); + NSLog(@"Step 7c: TH reads optional command (GetRelayStatusLogResponse) in GeneratedCommandList: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105591,21 +106142,21 @@ class Test_TC_TSUIC_1_1 : public TestCommandBridge { err = TestStep4bThReadsOptionalAttributeScheduleProgrammingVisibilityInAttributeList_5(); break; case 6: - ChipLogProgress(chipTool, " ***** Test Step 6 : Step 5: TH reads from the DUT the AcceptedCommandList attribute.\n"); - err = TestStep5ThReadsFromTheDutTheAcceptedCommandListAttribute_6(); - break; - case 7: - ChipLogProgress(chipTool, " ***** Test Step 7 : Step 6: TH reads from the DUT the GeneratedCommandList attribute.\n"); - err = TestStep6ThReadsFromTheDutTheGeneratedCommandListAttribute_7(); - break; - case 8: - ChipLogProgress(chipTool, " ***** Test Step 8 : Step 7: TH reads from the DUT the EventList attribute.\n"); + ChipLogProgress(chipTool, " ***** Test Step 6 : Step 5: TH reads from the DUT the EventList attribute.\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; + case 7: + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 6: TH reads from the DUT the AcceptedCommandList attribute.\n"); + err = TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_7(); + break; + case 8: + ChipLogProgress(chipTool, " ***** Test Step 8 : Step 7: TH reads from the DUT the GeneratedCommandList attribute.\n"); + err = TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_8(); + break; } if (CHIP_NO_ERROR != err) { @@ -105813,7 +106364,7 @@ class Test_TC_TSUIC_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5ThReadsFromTheDutTheAcceptedCommandListAttribute_6() + CHIP_ERROR TestStep6ThReadsFromTheDutTheAcceptedCommandListAttribute_7() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105822,9 +106373,9 @@ class Test_TC_TSUIC_1_1 : public TestCommandBridge { [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 5: TH reads from the DUT the AcceptedCommandList attribute.: Error: %@", err); + NSLog(@"Step 6: TH reads from the DUT the AcceptedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 5: TH reads from the DUT the AcceptedCommandList attribute.: Success"); + NSLog(@"Step 6: TH reads from the DUT the AcceptedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -105841,7 +106392,7 @@ class Test_TC_TSUIC_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ThReadsFromTheDutTheGeneratedCommandListAttribute_7() + CHIP_ERROR TestStep7ThReadsFromTheDutTheGeneratedCommandListAttribute_8() { MTRBaseDevice * device = GetDevice("alpha"); @@ -105850,9 +106401,9 @@ class Test_TC_TSUIC_1_1 : public TestCommandBridge { [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 6: TH reads from the DUT the GeneratedCommandList attribute.: Error: %@", err); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute.: Error: %@", err); } else { - NSLog(@"Step 6: TH reads from the DUT the GeneratedCommandList attribute.: Success"); + NSLog(@"Step 7: TH reads from the DUT the GeneratedCommandList attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -115230,128 +115781,88 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { err = TestStep2eThWaitsFor15SecondsMovementsOnTheDut_11(); break; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 3a1: TH reads OperationalStatus attribute's bit 0..1\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 3a: TH reads OperationalStatus attribute from DUT\n"); if (ShouldSkip("WNCV.S.A000a")) { NextTest(); return; } - err = TestStep3a1ThReadsOperationalStatusAttributesBit01_12(); + err = TestStep3aThReadsOperationalStatusAttributeFromDut_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do the bits checks in upcoming OperationalStatus read steps.\n"); - if (ShouldSkip("WNCV.S.A000a")) { - NextTest(); - return; - } - err = TestStep3a2WriteAttributeBitmap8WithOperationalStatusValueToDoTheBitsChecksInUpcomingOperationalStatusReadSteps_13(); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 3a: DUT updates its attributes\n"); + err = TestStep3aDutUpdatesItsAttributes_13(); break; case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF))\n"); - if (ShouldSkip("WNCV.S.A000a && WNCV.S.F00")) { - NextTest(); - return; - } - err = TestStep3a3ThChecksOperationalStatusValueBit23Wncvsf00lf_14(); - break; - case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 3a4: TH check OperationalStatus value bit 2..3 (WNCV.S.F00(LF))\n"); - if (ShouldSkip("WNCV.S.A000a && !WNCV.S.F00")) { - NextTest(); - return; - } - err = TestStep3a4ThCheckOperationalStatusValueBit23Wncvsf00lf_15(); - break; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))\n"); - if (ShouldSkip("WNCV.S.A000a && WNCV.S.F01")) { - NextTest(); - return; - } - err = TestStep3a5ThChecksOperationalStatusValueBit45Wncvsf01tl_16(); - break; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 3a6: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))\n"); - if (ShouldSkip("WNCV.S.A000a && !WNCV.S.F01")) { - NextTest(); - return; - } - err = TestStep3a6ThChecksOperationalStatusValueBit45Wncvsf01tl_17(); - break; - case 18: - ChipLogProgress(chipTool, " ***** Test Step 18 : Step 3a7: DUT updates its attributes\n"); - err = TestStep3a7DutUpdatesItsAttributes_18(); - break; - case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 3b: If (PA & LF) TH reads CurrentPositionLiftPercent100ths attribute from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 3b: If (PA & LF) TH reads CurrentPositionLiftPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F00 && WNCV.S.F02 && WNCV.S.A000e")) { NextTest(); return; } - err = TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_19(); + err = TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_14(); break; - case 20: - ChipLogProgress(chipTool, " ***** Test Step 20 : Step 3c: If (PA & LF) TH reads CurrentPositionLiftPercentage optional attribute from DUT\n"); + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 3c: If (PA & LF) TH reads CurrentPositionLiftPercentage optional attribute from DUT\n"); if (ShouldSkip("WNCV.S.F00 && WNCV.S.F02 && WNCV.S.A0008")) { NextTest(); return; } - err = TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_20(); + err = TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_15(); break; - case 21: - ChipLogProgress(chipTool, " ***** Test Step 21 : Step 3d: If (PA & TL) TH reads CurrentPositionTiltPercent100ths attribute from DUT\n"); + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 3d: If (PA & TL) TH reads CurrentPositionTiltPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F01 && WNCV.S.F04 && WNCV.S.A000f")) { NextTest(); return; } - err = TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_21(); + err = TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_16(); break; - case 22: - ChipLogProgress(chipTool, " ***** Test Step 22 : Step 3e: If (PA & LF) TH reads CurrentPositionTiltPercentage optional attribute from DUT\n"); + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 3e: If (PA & LF) TH reads CurrentPositionTiltPercentage optional attribute from DUT\n"); if (ShouldSkip("WNCV.S.F01 && WNCV.S.F04 && WNCV.S.A0009")) { NextTest(); return; } - err = TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_22(); + err = TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_17(); break; - case 23: - ChipLogProgress(chipTool, " ***** Test Step 23 : Step 4a: TH sends a StopMotion command to DUT\n"); + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 4a: TH sends a StopMotion command to DUT\n"); if (ShouldSkip("WNCV.S.C02.Rsp")) { NextTest(); return; } - err = TestStep4aThSendsAStopMotionCommandToDut_23(); + err = TestStep4aThSendsAStopMotionCommandToDut_18(); break; - case 24: - ChipLogProgress(chipTool, " ***** Test Step 24 : Step 4b: TH waits for 1-5 seconds end of motion(s) on the DUT\n"); - err = TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_24(); + case 19: + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 4b: TH waits for 1-5 seconds end of motion(s) on the DUT\n"); + err = TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_19(); break; - case 25: - ChipLogProgress(chipTool, " ***** Test Step 25 : Step 4c: TH reads OperationalStatus attribute from DUT\n"); + case 20: + ChipLogProgress(chipTool, " ***** Test Step 20 : Step 4c: TH reads OperationalStatus attribute from DUT\n"); if (ShouldSkip("WNCV.S.A000a")) { NextTest(); return; } - err = TestStep4cThReadsOperationalStatusAttributeFromDut_25(); + err = TestStep4cThReadsOperationalStatusAttributeFromDut_20(); break; - case 26: - ChipLogProgress(chipTool, " ***** Test Step 26 : Step 5a: TH waits for 100-1000 ms\n"); - err = TestStep5aThWaitsFor1001000Ms_26(); + case 21: + ChipLogProgress(chipTool, " ***** Test Step 21 : Step 5a: TH waits for 100-1000 ms\n"); + err = TestStep5aThWaitsFor1001000Ms_21(); break; - case 27: - ChipLogProgress(chipTool, " ***** Test Step 27 : Step 5b: If (PA & LF) TH reads TargetPositionLiftPercent100ths attribute from DUT\n"); + case 22: + ChipLogProgress(chipTool, " ***** Test Step 22 : Step 5b: If (PA & LF) TH reads TargetPositionLiftPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F00 && WNCV.S.F02 && WNCV.S.A000b")) { NextTest(); return; } - err = TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_27(); + err = TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_22(); break; - case 28: - ChipLogProgress(chipTool, " ***** Test Step 28 : Step 5c: If (PA & TL) TH reads TargetPositionTiltPercent100ths attribute from DUT\n"); + case 23: + ChipLogProgress(chipTool, " ***** Test Step 23 : Step 5c: If (PA & TL) TH reads TargetPositionTiltPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F01 && WNCV.S.F04 && WNCV.S.A000c")) { NextTest(); return; } - err = TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_28(); + err = TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_23(); break; } @@ -115436,21 +115947,6 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { case 23: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; - case 24: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 25: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 26: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 27: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 28: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; } // Go on to the next test. @@ -115461,7 +115957,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 29; + const uint16_t mTestCount = 24; chip::Optional mNodeId; chip::Optional mCluster; @@ -115508,7 +116004,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; - value.ms = mStep1bWaitTime.HasValue() ? mStep1bWaitTime.Value() : 10000UL; + value.ms = mStep1bWaitTime.HasValue() ? mStep1bWaitTime.Value() : 5000UL; return WaitForMs("alpha", value); } @@ -115655,7 +116151,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; - value.ms = mStep2bWaitTime.HasValue() ? mStep2bWaitTime.Value() : 500UL; + value.ms = mStep2bWaitTime.HasValue() ? mStep2bWaitTime.Value() : 200UL; return WaitForMs("alpha", value); } @@ -115722,9 +116218,8 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { value.ms = mStep2eWaitTime.HasValue() ? mStep2eWaitTime.Value() : 1000UL; return WaitForMs("alpha", value); } - NSNumber * _Nonnull OperationalStatusValue; - CHIP_ERROR TestStep3a1ThReadsOperationalStatusAttributesBit01_12() + CHIP_ERROR TestStep3aThReadsOperationalStatusAttributeFromDut_12() { MTRBaseDevice * device = GetDevice("alpha"); @@ -115733,162 +116228,21 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { [cluster readAttributeOperationalStatusWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a1: TH reads OperationalStatus attribute's bit 0..1: Error: %@", err); + NSLog(@"Step 3a: TH reads OperationalStatus attribute from DUT: Error: %@", err); } else { - NSLog(@"Step 3a1: TH reads OperationalStatus attribute's bit 0..1: Success"); + NSLog(@"Step 3a: TH reads OperationalStatus attribute from DUT: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); VerifyOrReturn(CheckConstraintType("operationalStatus", "bitmap8", "bitmap8")); - { - OperationalStatusValue = value; - } - NextTest(); }]; return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3a2WriteAttributeBitmap8WithOperationalStatusValueToDoTheBitsChecksInUpcomingOperationalStatusReadSteps_13() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - id bitmap8Argument; - bitmap8Argument = - [OperationalStatusValue copy]; - [cluster writeAttributeBitmap8WithValue:bitmap8Argument completion:^(NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do the bits checks in upcoming OperationalStatus read steps.: Error: %@", err); - } else { - NSLog(@"Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do the bits checks in upcoming OperationalStatus read steps.: Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a3ThChecksOperationalStatusValueBit23Wncvsf00lf_14() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Error: %@", err); - } else { - NSLog(@"Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a4ThCheckOperationalStatusValueBit23Wncvsf00lf_15() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a4: TH check OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Error: %@", err); - } else { - NSLog(@"Step 3a4: TH check OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a5ThChecksOperationalStatusValueBit45Wncvsf01tl_16() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Error: %@", err); - } else { - NSLog(@"Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a6ThChecksOperationalStatusValueBit45Wncvsf01tl_17() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a6: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Error: %@", err); - } else { - NSLog(@"Step 3a6: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a7DutUpdatesItsAttributes_18() + CHIP_ERROR TestStep3aDutUpdatesItsAttributes_13() { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; @@ -115896,7 +116250,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return WaitForMs("alpha", value); } - CHIP_ERROR TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_19() + CHIP_ERROR TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -115925,7 +116279,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_20() + CHIP_ERROR TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -115954,7 +116308,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_21() + CHIP_ERROR TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -115983,7 +116337,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_22() + CHIP_ERROR TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116012,7 +116366,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aThSendsAStopMotionCommandToDut_23() + CHIP_ERROR TestStep4aThSendsAStopMotionCommandToDut_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116035,7 +116389,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_24() + CHIP_ERROR TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_19() { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; @@ -116043,7 +116397,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return WaitForMs("alpha", value); } - CHIP_ERROR TestStep4cThReadsOperationalStatusAttributeFromDut_25() + CHIP_ERROR TestStep4cThReadsOperationalStatusAttributeFromDut_20() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116070,7 +116424,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5aThWaitsFor1001000Ms_26() + CHIP_ERROR TestStep5aThWaitsFor1001000Ms_21() { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; @@ -116078,7 +116432,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return WaitForMs("alpha", value); } - CHIP_ERROR TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_27() + CHIP_ERROR TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_22() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116107,7 +116461,7 @@ class Test_TC_WNCV_3_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_28() + CHIP_ERROR TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_23() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116263,128 +116617,88 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { err = TestStep2eThLeaveTheDeviceMovingFor2Seconds_11(); break; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 3a1: TH reads OperationalStatus attribute's bit 0..1\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 3a: TH reads OperationalStatus attribute from DUT\n"); if (ShouldSkip("WNCV.S.A000a")) { NextTest(); return; } - err = TestStep3a1ThReadsOperationalStatusAttributesBit01_12(); + err = TestStep3aThReadsOperationalStatusAttributeFromDut_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do the bits checks in upcoming OperationalStatus read steps.\n"); - if (ShouldSkip("WNCV.S.A000a")) { - NextTest(); - return; - } - err = TestStep3a2WriteAttributeBitmap8WithOperationalStatusValueToDoTheBitsChecksInUpcomingOperationalStatusReadSteps_13(); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 3a: DUT updates its attributes\n"); + err = TestStep3aDutUpdatesItsAttributes_13(); break; case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF))\n"); - if (ShouldSkip("WNCV.S.A000a && WNCV.S.F00")) { - NextTest(); - return; - } - err = TestStep3a3ThChecksOperationalStatusValueBit23Wncvsf00lf_14(); - break; - case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 3a4: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF))\n"); - if (ShouldSkip("WNCV.S.A000a && !WNCV.S.F00")) { - NextTest(); - return; - } - err = TestStep3a4ThChecksOperationalStatusValueBit23Wncvsf00lf_15(); - break; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))\n"); - if (ShouldSkip("WNCV.S.A000a && WNCV.S.F01")) { - NextTest(); - return; - } - err = TestStep3a5ThChecksOperationalStatusValueBit45Wncvsf01tl_16(); - break; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 3a6: TH chesks OperationalStatus value bit 4..5 (WNCV.S.F01(TL))\n"); - if (ShouldSkip("WNCV.S.A000a && !WNCV.S.F01")) { - NextTest(); - return; - } - err = TestStep3a6ThChesksOperationalStatusValueBit45Wncvsf01tl_17(); - break; - case 18: - ChipLogProgress(chipTool, " ***** Test Step 18 : Step 3a7: DUT updates its attributes\n"); - err = TestStep3a7DutUpdatesItsAttributes_18(); - break; - case 19: - ChipLogProgress(chipTool, " ***** Test Step 19 : Step 3b: If (PA & LF) TH reads CurrentPositionLiftPercent100ths attribute from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 3b: If (PA & LF) TH reads CurrentPositionLiftPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F00 && WNCV.S.F02 && WNCV.S.A000e")) { NextTest(); return; } - err = TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_19(); + err = TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_14(); break; - case 20: - ChipLogProgress(chipTool, " ***** Test Step 20 : Step 3c: If (PA & LF) TH reads CurrentPositionLiftPercentage optional attribute from DUT\n"); + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 3c: If (PA & LF) TH reads CurrentPositionLiftPercentage optional attribute from DUT\n"); if (ShouldSkip("WNCV.S.F00 && WNCV.S.F02 && WNCV.S.A0008")) { NextTest(); return; } - err = TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_20(); + err = TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_15(); break; - case 21: - ChipLogProgress(chipTool, " ***** Test Step 21 : Step 3d: If (PA & TL) TH reads CurrentPositionTiltPercent100ths attribute from DUT\n"); + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 3d: If (PA & TL) TH reads CurrentPositionTiltPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F01 && WNCV.S.F04 && WNCV.S.A000f")) { NextTest(); return; } - err = TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_21(); + err = TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_16(); break; - case 22: - ChipLogProgress(chipTool, " ***** Test Step 22 : Step 3e: If (PA & LF) TH reads CurrentPositionTiltPercentage optional attribute from DUT\n"); + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 3e: If (PA & LF) TH reads CurrentPositionTiltPercentage optional attribute from DUT\n"); if (ShouldSkip("WNCV.S.F01 && WNCV.S.F04 && WNCV.S.A0009")) { NextTest(); return; } - err = TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_22(); + err = TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_17(); break; - case 23: - ChipLogProgress(chipTool, " ***** Test Step 23 : Step 4a: TH sends a StopMotion command to DUT\n"); + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 4a: TH sends a StopMotion command to DUT\n"); if (ShouldSkip("WNCV.S.C02.Rsp")) { NextTest(); return; } - err = TestStep4aThSendsAStopMotionCommandToDut_23(); + err = TestStep4aThSendsAStopMotionCommandToDut_18(); break; - case 24: - ChipLogProgress(chipTool, " ***** Test Step 24 : Step 4b: TH waits for 1-5 seconds end of motion(s) on the DUT\n"); - err = TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_24(); + case 19: + ChipLogProgress(chipTool, " ***** Test Step 19 : Step 4b: TH waits for 1-5 seconds end of motion(s) on the DUT\n"); + err = TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_19(); break; - case 25: - ChipLogProgress(chipTool, " ***** Test Step 25 : Step 4c: TH reads OperationalStatus attribute from DUT\n"); + case 20: + ChipLogProgress(chipTool, " ***** Test Step 20 : Step 4c: TH reads OperationalStatus attribute from DUT\n"); if (ShouldSkip("WNCV.S.A000a")) { NextTest(); return; } - err = TestStep4cThReadsOperationalStatusAttributeFromDut_25(); + err = TestStep4cThReadsOperationalStatusAttributeFromDut_20(); break; - case 26: - ChipLogProgress(chipTool, " ***** Test Step 26 : Step 5a: TH waits for 100-1000 ms\n"); - err = TestStep5aThWaitsFor1001000Ms_26(); + case 21: + ChipLogProgress(chipTool, " ***** Test Step 21 : Step 5a: TH waits for 100-1000 ms\n"); + err = TestStep5aThWaitsFor1001000Ms_21(); break; - case 27: - ChipLogProgress(chipTool, " ***** Test Step 27 : Step 5b: If (PA & LF) TH reads TargetPositionLiftPercent100ths attribute from DUT\n"); + case 22: + ChipLogProgress(chipTool, " ***** Test Step 22 : Step 5b: If (PA & LF) TH reads TargetPositionLiftPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F00 && WNCV.S.F02 && WNCV.S.A000b")) { NextTest(); return; } - err = TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_27(); + err = TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_22(); break; - case 28: - ChipLogProgress(chipTool, " ***** Test Step 28 : Step 5c: If (PA & TL) TH reads TargetPositionTiltPercent100ths attribute from DUT\n"); + case 23: + ChipLogProgress(chipTool, " ***** Test Step 23 : Step 5c: If (PA & TL) TH reads TargetPositionTiltPercent100ths attribute from DUT\n"); if (ShouldSkip("WNCV.S.F01 && WNCV.S.F04 && WNCV.S.A000c")) { NextTest(); return; } - err = TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_28(); + err = TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_23(); break; } @@ -116469,21 +116783,6 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { case 23: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; - case 24: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 25: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 26: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 27: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; - case 28: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - break; } // Go on to the next test. @@ -116494,7 +116793,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 29; + const uint16_t mTestCount = 24; chip::Optional mNodeId; chip::Optional mCluster; @@ -116541,7 +116840,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; - value.ms = mStep1bWaitTime.HasValue() ? mStep1bWaitTime.Value() : 10000UL; + value.ms = mStep1bWaitTime.HasValue() ? mStep1bWaitTime.Value() : 5000UL; return WaitForMs("alpha", value); } @@ -116688,7 +116987,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; - value.ms = mStep2bWaitTime.HasValue() ? mStep2bWaitTime.Value() : 500UL; + value.ms = mStep2bWaitTime.HasValue() ? mStep2bWaitTime.Value() : 200UL; return WaitForMs("alpha", value); } @@ -116755,9 +117054,8 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { value.ms = mStep2eWaitTime.HasValue() ? mStep2eWaitTime.Value() : 1000UL; return WaitForMs("alpha", value); } - NSNumber * _Nonnull OperationalStatusValue; - CHIP_ERROR TestStep3a1ThReadsOperationalStatusAttributesBit01_12() + CHIP_ERROR TestStep3aThReadsOperationalStatusAttributeFromDut_12() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116766,162 +117064,21 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { [cluster readAttributeOperationalStatusWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3a1: TH reads OperationalStatus attribute's bit 0..1: Error: %@", err); + NSLog(@"Step 3a: TH reads OperationalStatus attribute from DUT: Error: %@", err); } else { - NSLog(@"Step 3a1: TH reads OperationalStatus attribute's bit 0..1: Success"); + NSLog(@"Step 3a: TH reads OperationalStatus attribute from DUT: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); VerifyOrReturn(CheckConstraintType("operationalStatus", "bitmap8", "bitmap8")); - { - OperationalStatusValue = value; - } - - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a2WriteAttributeBitmap8WithOperationalStatusValueToDoTheBitsChecksInUpcomingOperationalStatusReadSteps_13() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - id bitmap8Argument; - bitmap8Argument = - [OperationalStatusValue copy]; - [cluster writeAttributeBitmap8WithValue:bitmap8Argument completion:^(NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do the bits checks in upcoming OperationalStatus read steps.: Error: %@", err); - } else { - NSLog(@"Step 3a2: Write attribute BITMAP8 with OperationalStatusValue to do the bits checks in upcoming OperationalStatus read steps.: Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a3ThChecksOperationalStatusValueBit23Wncvsf00lf_14() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Error: %@", err); - } else { - NSLog(@"Step 3a3: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a4ThChecksOperationalStatusValueBit23Wncvsf00lf_15() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a4: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Error: %@", err); - } else { - NSLog(@"Step 3a4: TH checks OperationalStatus value bit 2..3 (WNCV.S.F00(LF)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a5ThChecksOperationalStatusValueBit45Wncvsf01tl_16() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Error: %@", err); - } else { - NSLog(@"Step 3a5: TH checks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); - NextTest(); - }]; - - return CHIP_NO_ERROR; - } - - CHIP_ERROR TestStep3a6ThChesksOperationalStatusValueBit45Wncvsf01tl_17() - { - - MTRBaseDevice * device = GetDevice("alpha"); - __auto_type * cluster = [[MTRBaseClusterUnitTesting alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; - VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); - - [cluster readAttributeBitmap8WithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { - if (err != nil) { - NSLog(@"Step 3a6: TH chesks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Error: %@", err); - } else { - NSLog(@"Step 3a6: TH chesks OperationalStatus value bit 4..5 (WNCV.S.F01(TL)): Success"); - } - - VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - - { - id actualValue = value; - VerifyOrReturn(CheckValue("bitmap8", actualValue, OperationalStatusValue)); - } - - VerifyOrReturn(CheckConstraintType("bitmap8", "bitmap8", "bitmap8")); NextTest(); }]; return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3a7DutUpdatesItsAttributes_18() + CHIP_ERROR TestStep3aDutUpdatesItsAttributes_13() { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; @@ -116929,7 +117086,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return WaitForMs("alpha", value); } - CHIP_ERROR TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_19() + CHIP_ERROR TestStep3bIfPaLfThReadsCurrentPositionLiftPercent100thsAttributeFromDut_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116958,7 +117115,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_20() + CHIP_ERROR TestStep3cIfPaLfThReadsCurrentPositionLiftPercentageOptionalAttributeFromDut_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -116987,7 +117144,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_21() + CHIP_ERROR TestStep3dIfPaTlThReadsCurrentPositionTiltPercent100thsAttributeFromDut_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -117016,7 +117173,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_22() + CHIP_ERROR TestStep3eIfPaLfThReadsCurrentPositionTiltPercentageOptionalAttributeFromDut_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -117045,7 +117202,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4aThSendsAStopMotionCommandToDut_23() + CHIP_ERROR TestStep4aThSendsAStopMotionCommandToDut_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -117068,7 +117225,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_24() + CHIP_ERROR TestStep4bThWaitsFor15SecondsEndOfMotionsOnTheDut_19() { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; @@ -117076,7 +117233,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return WaitForMs("alpha", value); } - CHIP_ERROR TestStep4cThReadsOperationalStatusAttributeFromDut_25() + CHIP_ERROR TestStep4cThReadsOperationalStatusAttributeFromDut_20() { MTRBaseDevice * device = GetDevice("alpha"); @@ -117103,15 +117260,15 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5aThWaitsFor1001000Ms_26() + CHIP_ERROR TestStep5aThWaitsFor1001000Ms_21() { chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; - value.ms = mStep5aWaitTime.HasValue() ? mStep5aWaitTime.Value() : 500UL; + value.ms = mStep5aWaitTime.HasValue() ? mStep5aWaitTime.Value() : 200UL; return WaitForMs("alpha", value); } - CHIP_ERROR TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_27() + CHIP_ERROR TestStep5bIfPaLfThReadsTargetPositionLiftPercent100thsAttributeFromDut_22() { MTRBaseDevice * device = GetDevice("alpha"); @@ -117140,7 +117297,7 @@ class Test_TC_WNCV_3_2 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_28() + CHIP_ERROR TestStep5cIfPaTlThReadsTargetPositionTiltPercent100thsAttributeFromDut_23() { MTRBaseDevice * device = GetDevice("alpha"); @@ -191092,12 +191249,12 @@ class Test_TC_ACFREMON_1_1 : public TestCommandBridge { err = TestStep3cGivenACFREMONSF01WarningEnsureFeaturemapHasTheCorrectBitSet_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Step 3d: Given ACFREMON.S.F01(ReplacementProductList) ensure featuremap has the correct bit set\n"); + ChipLogProgress(chipTool, " ***** Test Step 5 : Step 3d: Given ACFREMON.S.F02(ReplacementProductList) ensure featuremap has the correct bit set\n"); if (ShouldSkip("ACFREMON.S.F02")) { NextTest(); return; } - err = TestStep3dGivenACFREMONSF01ReplacementProductListEnsureFeaturemapHasTheCorrectBitSet_5(); + err = TestStep3dGivenACFREMONSF02ReplacementProductListEnsureFeaturemapHasTheCorrectBitSet_5(); break; case 6: ChipLogProgress(chipTool, " ***** Test Step 6 : Step 4a: TH reads from the DUT the AttributeList attribute.\n"); @@ -191361,7 +191518,7 @@ class Test_TC_ACFREMON_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep3dGivenACFREMONSF01ReplacementProductListEnsureFeaturemapHasTheCorrectBitSet_5() + CHIP_ERROR TestStep3dGivenACFREMONSF02ReplacementProductListEnsureFeaturemapHasTheCorrectBitSet_5() { MTRBaseDevice * device = GetDevice("alpha"); @@ -191370,9 +191527,9 @@ class Test_TC_ACFREMON_1_1 : public TestCommandBridge { [cluster readAttributeFeatureMapWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 3d: Given ACFREMON.S.F01(ReplacementProductList) ensure featuremap has the correct bit set: Error: %@", err); + NSLog(@"Step 3d: Given ACFREMON.S.F02(ReplacementProductList) ensure featuremap has the correct bit set: Error: %@", err); } else { - NSLog(@"Step 3d: Given ACFREMON.S.F01(ReplacementProductList) ensure featuremap has the correct bit set: Success"); + NSLog(@"Step 3d: Given ACFREMON.S.F02(ReplacementProductList) ensure featuremap has the correct bit set: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -191670,8 +191827,8 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { // incorrect mTestIndex value observed when we get the response. switch (mTestIndex++) { case 0: - ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Wait for the commissioned device to be retrieved\n"); - err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); + ChipLogProgress(chipTool, " ***** Test Step 0 : Step 1: Commission DUT to TH (can be skipped if done in a preceding test).\n"); + err = TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0(); break; case 1: ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads from the DUT the Condition attribute.\n"); @@ -191690,36 +191847,44 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { err = TestStep3ThReadsFromTheDutTheDegradationDirectionAttribute_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4: TH reads from the DUT the ChangeIndication attribute.\n"); - if (ShouldSkip("ACFREMON.S.A0002")) { + ChipLogProgress(chipTool, " ***** Test Step 3 : Step 4a: TH reads from the DUT the ChangeIndication attribute.\n"); + if (ShouldSkip("ACFREMON.S.A0002 && !ACFREMON.S.F01")) { NextTest(); return; } - err = TestStep4ThReadsFromTheDutTheChangeIndicationAttribute_3(); + err = TestStep4aThReadsFromTheDutTheChangeIndicationAttribute_3(); break; case 4: - ChipLogProgress(chipTool, " ***** Test Step 4 : Step 5: TH reads from the DUT the InPlaceIndicator attribute\n"); - if (ShouldSkip("ACFREMON.S.A0003")) { + ChipLogProgress(chipTool, " ***** Test Step 4 : Step 4b: TH reads from the DUT the ChangeIndication attribute.\n"); + if (ShouldSkip("ACFREMON.S.F01 && ACFREMON.S.A0002")) { NextTest(); return; } - err = TestStep5ThReadsFromTheDutTheInPlaceIndicatorAttribute_4(); + err = TestStep4bThReadsFromTheDutTheChangeIndicationAttribute_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Step 6: TH reads from the DUT the LastChangedTime attribute\n"); - if (ShouldSkip("ACFREMON.S.A0004")) { + ChipLogProgress(chipTool, " ***** Test Step 5 : Step 5: TH reads from the DUT the InPlaceIndicator attribute\n"); + if (ShouldSkip("ACFREMON.S.A0003")) { NextTest(); return; } - err = TestStep6ThReadsFromTheDutTheLastChangedTimeAttribute_5(); + err = TestStep5ThReadsFromTheDutTheInPlaceIndicatorAttribute_5(); break; case 6: - ChipLogProgress(chipTool, " ***** Test Step 6 : Step 7: TH reads from the DUT the ReplacementProductList attribute\n"); + ChipLogProgress(chipTool, " ***** Test Step 6 : Step 6: TH reads from the DUT the LastChangedTime attribute\n"); + if (ShouldSkip("ACFREMON.S.A0004")) { + NextTest(); + return; + } + err = TestStep6ThReadsFromTheDutTheLastChangedTimeAttribute_6(); + break; + case 7: + ChipLogProgress(chipTool, " ***** Test Step 7 : Step 7: TH reads from the DUT the ReplacementProductList attribute\n"); if (ShouldSkip("ACFREMON.S.A0005")) { NextTest(); return; } - err = TestStep7ThReadsFromTheDutTheReplacementProductListAttribute_6(); + err = TestStep7ThReadsFromTheDutTheReplacementProductListAttribute_7(); break; } @@ -191753,6 +191918,9 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { case 6: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 7: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -191763,14 +191931,14 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 7; + const uint16_t mTestCount = 8; chip::Optional mNodeId; chip::Optional mCluster; chip::Optional mEndpoint; chip::Optional mTimeout; - CHIP_ERROR TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0() + CHIP_ERROR TestStep1CommissionDutToThCanBeSkippedIfDoneInAPrecedingTest_0() { chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; @@ -191830,7 +191998,7 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ThReadsFromTheDutTheChangeIndicationAttribute_3() + CHIP_ERROR TestStep4aThReadsFromTheDutTheChangeIndicationAttribute_3() { MTRBaseDevice * device = GetDevice("alpha"); @@ -191839,24 +192007,49 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { [cluster readAttributeChangeIndicationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { if (err != nil) { - NSLog(@"Step 4: TH reads from the DUT the ChangeIndication attribute.: Error: %@", err); + NSLog(@"Step 4a: TH reads from the DUT the ChangeIndication attribute.: Error: %@", err); } else { - NSLog(@"Step 4: TH reads from the DUT the ChangeIndication attribute.: Success"); + NSLog(@"Step 4a: TH reads from the DUT the ChangeIndication attribute.: Success"); } VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); VerifyOrReturn(CheckConstraintType("changeIndication", "enum8", "enum8")); - VerifyOrReturn(CheckConstraintMinValue("changeIndication", [value unsignedCharValue], 0U)); - VerifyOrReturn(CheckConstraintMaxValue("changeIndication", [value unsignedCharValue], 2U)); + NextTest(); + }]; + + return CHIP_NO_ERROR; + } + + CHIP_ERROR TestStep4bThReadsFromTheDutTheChangeIndicationAttribute_4() + { + + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterActivatedCarbonFilterMonitoring alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeChangeIndicationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { + if (err != nil) { + NSLog(@"Step 4b: TH reads from the DUT the ChangeIndication attribute.: Error: %@", err); + } else { + NSLog(@"Step 4b: TH reads from the DUT the ChangeIndication attribute.: Success"); + } + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + { + id actualValue = value; + VerifyOrReturn(CheckValue("ChangeIndication", actualValue, 1U)); + } + + VerifyOrReturn(CheckConstraintType("changeIndication", "enum8", "enum8")); NextTest(); }]; return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5ThReadsFromTheDutTheInPlaceIndicatorAttribute_4() + CHIP_ERROR TestStep5ThReadsFromTheDutTheInPlaceIndicatorAttribute_5() { MTRBaseDevice * device = GetDevice("alpha"); @@ -191879,7 +192072,7 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ThReadsFromTheDutTheLastChangedTimeAttribute_5() + CHIP_ERROR TestStep6ThReadsFromTheDutTheLastChangedTimeAttribute_6() { MTRBaseDevice * device = GetDevice("alpha"); @@ -191906,7 +192099,7 @@ class Test_TC_ACFREMON_2_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7ThReadsFromTheDutTheReplacementProductListAttribute_6() + CHIP_ERROR TestStep7ThReadsFromTheDutTheReplacementProductListAttribute_7() { MTRBaseDevice * device = GetDevice("alpha");