diff --git a/src/app/tests/suites/certification/Test_TC_CDOCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_CDOCONC_1_1.yaml new file mode 100644 index 00000000000000..963156554c928a --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_CDOCONC_1_1.yaml @@ -0,0 +1,336 @@ +# 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. + +name: 145.1.1. [TC-CDOCONC-1.1] Global Attributes with DUT as Server + +PICS: + - CDOCONC.S + +config: + nodeId: 0x12344321 + cluster: "Carbon Dioxide Concentration Measurement" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: Read the global attribute: FeatureMap and check for either + bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given CDOCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CDOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given CDOCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CDOCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given CDOCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CDOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given CDOCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CDOCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given CDOCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CDOCONC.S.F02 && CDOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given CDOCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CDOCONC.S.F02 && !CDOCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4, 0x2] + + - label: + "Step 3h: Given CDOCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CDOCONC.S.F03 && CDOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given CDOCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CDOCONC.S.F03 && !CDOCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8, 0x2] + + - label: + "Step 3j: Given CDOCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CDOCONC.S.F04 && CDOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given CDOCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CDOCONC.S.F04 && !CDOCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10, 0x1] + + - label: + "Step 3l: Given CDOCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CDOCONC.S.F05 && CDOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given CDOCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CDOCONC.S.F05 && !CDOCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20, 0x1] + + - label: "Step 4a: Read the global attribute: AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: Read the global attribute: AttributeList" + PICS: " !PICS_EVENT_LIST_ENABLED " + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 4b: Read the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CDOCONC.S.A0007 && CDOCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when CDOCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CDOCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: Read the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CDOCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when CDOCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CDOCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: Read the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CDOCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when CDOCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CDOCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: Read the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CDOCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + CDOCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CDOCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: Read the optional, feature dependent attribute LevelValue in + AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CDOCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + CDOCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CDOCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: Read the global attribute: EventList" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6: Read the global attribute: AcceptedCommandList" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: Read the global attribute: GeneratedCommandList" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_CMOCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_CMOCONC_1_1.yaml new file mode 100644 index 00000000000000..dfa949e6ffc58c --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_CMOCONC_1_1.yaml @@ -0,0 +1,336 @@ +# 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. + +name: 145.1.1. [TC-CMOCONC-1.1] Global Attributes with DUT as Server + +PICS: + - CMOCONC.S + +config: + nodeId: 0x12344321 + cluster: "Carbon Monoxide Concentration Measurement" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: Read the global attribute: FeatureMap and check for either + bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given CMOCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CMOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given CMOCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CMOCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given CMOCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CMOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given CMOCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CMOCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given CMOCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CMOCONC.S.F02 && CMOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given CMOCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CMOCONC.S.F02 && !CMOCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given CMOCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CMOCONC.S.F03 && CMOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given CMOCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CMOCONC.S.F03 && !CMOCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given CMOCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CMOCONC.S.F04 && CMOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given CMOCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CMOCONC.S.F04 && !CMOCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given CMOCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: CMOCONC.S.F05 && CMOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given CMOCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !CMOCONC.S.F05 && !CMOCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: Read the global attribute: AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 4b: Read the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CMOCONC.S.A0007 && CMOCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when CMOCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CMOCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: Read the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CMOCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when CMOCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CMOCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: Read the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CMOCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when CMOCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CMOCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: Read the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CMOCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + CMOCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CMOCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: Read the optional, feature dependent attribute LevelValue in + AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: CMOCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + CMOCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !CMOCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: Read the global attribute: EventList" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6: Read the global attribute: AcceptedCommandList" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: Read the global attribute: GeneratedCommandList" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list 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 new file mode 100644 index 00000000000000..afa472af0aa12b --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_CNET_1_3.yaml @@ -0,0 +1,219 @@ +# Copyright (c) 2021 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. + +name: 12.1.3. [TC-CNET-1.3] Global Attributes with DUT as Server + +PICS: + - CNET.S + +config: + nodeId: 0x12344321 + cluster: "Network Commissioning" + endpoint: 0 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 2 + constraints: + type: int16u + + - 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" + response: + value: 0 + + - label: + "Step 3b: TH reads the global attribute: FeatureMap when CNET.S.F00 is + set" + PICS: CNET.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 1 + + - label: + "Step 3c: TH reads the global attribute: FeatureMap when CNET.S.F01 is + set" + PICS: CNET.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 2 + + - label: + "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: TH reads from the DUT the AttributeList attribute" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4b: TH reads from the DUT the AttributeList attribute." + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [65528, 65529, 65531, 65532, 65533] + + - label: + "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" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 4, 5, 6, 7] + + - label: + "Step 4d: TH reads the feature dependent + attribute(ScanMaxTimeSeconds): AttributeList" + PICS: CNET.S.F00 || CNET.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [2] + + - label: + "Step 4e: TH reads the feature dependent + attribute(ConnectMaxTimeSeconds) in AttributeList" + PICS: CNET.S.F00 || CNET.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [3] + + - 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" + response: + value: [] + constraints: + type: list + + - label: + "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" + response: + constraints: + type: list + contains: [0, 4, 6, 8] + + - label: + "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" + response: + constraints: + type: list + contains: [2] + + - label: + "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" + response: + constraints: + type: list + contains: [3] + + - label: + "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" + response: + value: [] + + - label: + "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" + response: + constraints: + type: list + contains: [1, 5, 7] + + - label: + "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" + response: + value: [] diff --git a/src/app/tests/suites/certification/Test_TC_DEM_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DEM_1_1.yaml new file mode 100644 index 00000000000000..e69e5a62b0a820 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_DEM_1_1.yaml @@ -0,0 +1,123 @@ +# Copyright (c) 2024 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: 237.1.1. [TC-DEM-1.1] Global Attributes with DUT as Server + +PICS: + - DEM.S + +config: + nodeId: 0x12344321 + cluster: "Basic Information" + endpoint: 0 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + verification: | + + disabled: true + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + verification: | + ./chip-tool deviceenergymanagement read cluster-revision 1 1 + + On TH(chip-tool), Verify the ClusterRevision attribute value as 2: + Below mentioned log is based on the RPI implementation, Value may vary on real DUT + + [1705565332.698601][7061:7063] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0098 Attribute 0x0000_FFFD DataVersion: 1117764527 + [1705565332.698668][7061:7063] CHIP:TOO: ClusterRevision: 3 + disabled: true + + - label: "Step 3: TH reads from the DUT the FeatureMap attribute." + verification: | + ./chip-tool deviceenergymanagement read feature-map 1 1 + + Via the TH (chip-tool), verify that theFeatureMap attribute contains the value. Below mentioned log is based on the RPI implementation, Value may vary on real DUT + + + [1705565302.904580][7054:7056] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0098 Attribute 0x0000_FFFC DataVersion: 1117764527 + [1705565302.904631][7054:7056] CHIP:TOO: FeatureMap: 127 + disabled: true + + - label: "Step 4: TH reads from the DUT the AttributeList attribute." + verification: | + ./chip-tool deviceenergymanagement read attribute-list 1 1 + + Via the TH (chip-tool), verify that the AttributeList attribute contains + - Mandatory entries:0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0xfff8, 0xfff9, 0xfffb, 0xfffc and 0xfffd + - Based on feature support:- 0x0005, 0x0006, 0x0007 + Below mentioned log is based on the RPI implementation, Value may vary on real DUT + + [1723642027.628] [328171:328173] [TOO] Endpoint: 1 Cluster: 0x0000_0098 Attribute 0x0000_FFFB DataVersion: 3122179410 + [1723642027.628] [328171:328173] [TOO] AttributeList: 13 entries + [1723642027.628] [328171:328173] [TOO] [1]: 0 (ESAType) + [1723642027.628] [328171:328173] [TOO] [2]: 1 (ESACanGenerate) + [1723642027.628] [328171:328173] [TOO] [3]: 2 (ESAState) + [1723642027.628] [328171:328173] [TOO] [4]: 3 (AbsMinPower) + [1723642027.628] [328171:328173] [TOO] [5]: 4 (AbsMaxPower) + [1723642027.628] [328171:328173] [TOO] [6]: 5 (PowerAdjustmentCapability) + [1723642027.628] [328171:328173] [TOO] [7]: 6 (Forecast) + [1723642027.628] [328171:328173] [TOO] [8]: 7 (OptOutState) + [1723642027.628] [328171:328173] [TOO] [9]: 65528 (GeneratedCommandList) + [1723642027.628] [328171:328173] [TOO] [10]: 65529 (AcceptedCommandList) + [1723642027.628] [328171:328173] [TOO] [11]: 65531 (AttributeList) + [1723642027.628] [328171:328173] [TOO] [12]: 65532 (FeatureMap) + [1723642027.628] [328171:328173] [TOO] [13]: 65533 (ClusterRevision) + disabled: true + + - label: "Step 5*: TH reads from the DUT the EventList attribute." + verification: | + EventList is currently not supported and SHALL be skipped. + + ./chip-tool deviceenergymanagement read event-list 1 1 + + Via the TH (chip-tool), verify that the EventList attribute. Below mentioned log is based on the RPI implementation, Value may vary on real DUT + + [1703745599.166331][1300:1302] CHIP:DMG: StatusIB = + [1703745599.166364][1300:1302] CHIP:DMG: { + [1703745599.166419][1300:1302] CHIP:DMG: status = 0x86 (UNSUPPORTED_ATTRIBUTE), + [1703745599.166450][1300:1302] CHIP:DMG: }, + disabled: true + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + verification: | + ./chip-tool deviceenergymanagement read accepted-command-list 1 1 + + On TH(chip-tool), Verify the AcceptedCommandList attribute that contains 7 entries: + Below mentioned log is based on the RPI implementation, Value may vary on real DUT + + [1705649342.947638][6221:6223] [TOO] Endpoint: 1 Cluster: 0x0000_0098 Attribute 0x0000_FFF9 DataVersion: 633673396 + [1705649342.947712][6221:6223] [TOO] AcceptedCommandList: 8 entries + [1705649342.947754][6221:6223] [TOO] [1]: 0 (PowerAdjustRequest) + [1705649342.947779][6221:6223] [TOO] [2]: 1 (CancelPowerAdjustRequest) + [1705649342.947802][6221:6223] [TOO] [3]: 2 (StartTimeAdjustRequest) + [1705649342.947825][6221:6223] [TOO] [4]: 3 (PauseRequest) + [1705649342.947848][6221:6223] [TOO] [5]: 4 (ResumeRequest) + [1705649342.947871][6221:6223] [TOO] [6]: 5 (ModifyForecastRequest) + [1705649342.947894][6221:6223] [TOO] [7]: 6 (RequestConstraintBasedForecast) + [1705649342.947917][6221:6223] [TOO] [8]: 7 (CancelRequest) + disabled: true + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + verification: | + ./chip-tool deviceenergymanagement read generated-command-list 1 1 + + On TH(chip-tool), Verify the GeneratedCommandList attribute that contains 1 entries: + + [1705567897.076935][7141:7143] [TOO] Endpoint: 1 Cluster: 0x0000_0098 Attribute 0x0000_FFF8 DataVersion: 1117764527 + [1705567897.076989][7141:7143] [TOO] GeneratedCommandList: 0 entries + disabled: true diff --git a/src/app/tests/suites/certification/Test_TC_FLDCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_FLDCONC_1_1.yaml new file mode 100644 index 00000000000000..14f37e7cbb3e29 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_FLDCONC_1_1.yaml @@ -0,0 +1,339 @@ +# 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. + +name: 145.1.1. [TC-FLDCONC-1.1] Global Attributes with DUT as Server + +PICS: + - FLDCONC.S + +config: + nodeId: 0x12344321 + cluster: "Formaldehyde Concentration Measurement" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: TH reads from the DUT the FeatureMap attribute. and check + for either bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given FLDCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: FLDCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given FLDCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !FLDCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given FLDCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: FLDCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given FLDCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !FLDCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given FLDCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: FLDCONC.S.F02 && FLDCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given FLDCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !FLDCONC.S.F02 && !FLDCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given FLDCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: FLDCONC.S.F03 && FLDCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given FLDCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !FLDCONC.S.F03 && !FLDCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given FLDCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: FLDCONC.S.F04 && FLDCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given FLDCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !FLDCONC.S.F04 && !FLDCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given FLDCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: FLDCONC.S.F05 && FLDCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given FLDCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !FLDCONC.S.F05 && !FLDCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: FLDCONC.S.A0007 && FLDCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when FLDCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !FLDCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: TH reads the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: FLDCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when FLDCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !FLDCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: TH reads the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: FLDCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when FLDCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !FLDCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: TH reads the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: FLDCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + FLDCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !FLDCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: TH reads the optional, feature dependent attribute + LevelValue in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: FLDCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + FLDCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !FLDCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: TH reads from the DUT the EventList attribute." + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_ICDM_1_1.yaml b/src/app/tests/suites/certification/Test_TC_ICDM_1_1.yaml new file mode 100755 index 00000000000000..fb507fd7a89663 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_ICDM_1_1.yaml @@ -0,0 +1,223 @@ +# 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. + +name: 312.1.1. [TC-ICDM-1.1] Global attributes with DUT as Server + +PICS: + - ICDM.S + +config: + nodeId: 0x12344321 + cluster: "ICD Management" + endpoint: 0 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads ClusterRevision attribute from DUT" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: "Step 3: TH reads FeatureMap attribute from DUT" + PICS: " !ICDM.S.F00 && !ICDM.S.F01 && !ICDM.S.F02 " + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3: TH reads FeatureMap attribute from DUT, bit 0 is set to 1 if + ICDM.S.F00(UAT) is true," + PICS: ICDM.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + hasMasksSet: [0x1] + type: bitmap32 + + - label: + "Step 3: TH reads FeatureMap attribute from DUT, bit 1 is set to 1 if + ICDM.S.F01(CIP) is true" + PICS: ICDM.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + hasMasksSet: [0x2] + type: bitmap32 + + - label: + "Step 3: TH reads FeatureMap attribute from DUT, bit 2 is set to 1 if + ICDM.S.F02(UAT) is true," + PICS: ICDM.S.F02 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + hasMasksSet: [0x4] + type: bitmap32 + + - label: "Step 4a: TH reads AttributeList attribute from DUT" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 2, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads AttributeList attribute from DUT" + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 2, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: Read the optional attribute(RegisteredClients) in + AttributeList" + PICS: ICDM.S.A0003 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [3] + + - label: "Step 4c: Read the optional attribute(IcdCounter) in AttributeList" + PICS: ICDM.S.A0004 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [4] + + - label: + "Step 4d: Read the optional attribute(ClientsSupportedPerFabric) in + AttributeList" + PICS: ICDM.S.A0005 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [5] + + - label: + "Step 4d: Read the optional attribute(UserActiveModeTriggerHint) in + AttributeList" + PICS: ICDM.S.A0006 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [6] + + - label: + "Step 4d: Read the optional + attribute(UserActiveModeTriggerInstruction) in AttributeList" + PICS: ICDM.S.A0007 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [7] + + - 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 AcceptedCommandList attribute from DUT" + PICS: " !ICDM.S.F00 && !ICDM.S.C03.Rsp " + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: + "Step 6b: TH reads AcceptedCommandList attribute from DUT if + ICDM.S.F00 is true" + PICS: ICDM.S.F00 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0, 2] + + - label: + "Step 6c: Read the optional command (StayActiveRequest) in + AttributeList" + PICS: ICDM.S.C03.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [3] + + - label: "Step 7: TH reads GeneratedCommandList attribute from DUT" + PICS: " !ICDM.S.F00 " + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads GeneratedCommandList attribute from DUT" + PICS: ICDM.S.F00 + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + constraints: + type: list + contains: [1] + + - label: + "Step 7: TH reads GeneratedCommandList attribute from DUT. The list + MAY include these optional entries: 0x04: SHALL be included if and + only if ICDM.S.C04.Tx(StayActiveResponse) " + PICS: ICDM.S.C04.Tx + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + constraints: + type: list + contains: [4] diff --git a/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml b/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml new file mode 100644 index 00000000000000..cb10e8a1d116f2 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_LTIME_1_2.yaml @@ -0,0 +1,116 @@ +# Copyright (c) 2021 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. + +name: 108.1.2. [TC-LTIME-1.2] Global Attributes with DUT as Server + +PICS: + - LTIME.S + +config: + nodeId: 0x12344321 + cluster: "Time Format Localization" + endpoint: 0 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 1 + constraints: + type: int16u + + - label: "Step 3: TH reads from the DUT the FeatureMap attribute." + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + minValue: 0 + maxValue: 1 + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads Feature dependent attribute(ActiveCalendarType) in + AttributeList from DUT" + PICS: LTIME.S.F00 && LTIME.S.A0001 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [1] + + - label: + "Step 4c: TH reads Feature dependent attribute(SupportedCalendarTypes) + in AttributeList from DUT" + PICS: LTIME.S.F00 && LTIME.S.A0002 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [2] + + - label: "Step 5: TH reads from the DUT the EventList attribute." + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_MWOCTRL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_MWOCTRL_1_1.yaml new file mode 100644 index 00000000000000..d06db8ae77d741 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_MWOCTRL_1_1.yaml @@ -0,0 +1,170 @@ +# Copyright (c) 2024 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. + +name: 263.1.1. [TC-MWOCTRL-1.1] Global attributes with DUT as Server + +PICS: + - MWOCTRL.S + +config: + nodeId: 0x12344321 + cluster: "Microwave Oven Control" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 1 + constraints: + type: int16u + + - label: "Step 3a: Check for no features selected." + command: "readAttribute" + attribute: "FeatureMap" + PICS: "!MWOCTRL.S.F00 && !MWOCTRL.S.F01 && !MWOCTRL.S.F02" + response: + value: 0 + constraints: + type: bitmap32 + + - label: "Step 3b: Check for PWRNUM feature support" + command: "readAttribute" + attribute: "FeatureMap" + PICS: MWOCTRL.S.F00 + response: + saveAs: powerNumSupported + constraints: + type: bitmap32 + hasMasksSet: [0x1] + hasMasksClear: [0x2] + + - label: "Step 3c: Check for WATTS feature support" + command: "readAttribute" + attribute: "FeatureMap" + PICS: MWOCTRL.S.F01 + response: + saveAs: wattsSupported + constraints: + type: bitmap32 + hasMasksClear: [0x1, 0x4] + hasMasksSet: [0x2] + + - label: "Step 3d: Check for PWRLMTS feature support" + command: "readAttribute" + attribute: "FeatureMap" + PICS: MWOCTRL.S.F02 + response: + saveAs: wattsSupported + constraints: + type: bitmap32 + hasMasksSet: [0x1, 0x4] + hasMasksClear: [0x2] + + - label: "Step 4a: Read the global attribute: AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4b: Read the global attribute: AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 4c: Check for mandatory attribute support for PWRNUM feature" + PICS: MWOCTRL.S.F00 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [2] + + - label: "Step 4d: Check for optional attribute support for PWRNUM feature" + PICS: MWOCTRL.S.F02 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [3, 4, 5] + + - label: "Step 4e: Check for mandatory attribute support for WATTS feaure" + PICS: MWOCTRL.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [6, 7] + + - label: "Step 4f: Check for optional WattRating attribute support" + PICS: MWOCTRL.S.A0008 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [8] + + - label: "Step 5: TH reads EventList attribute from DUT" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6a: Check for mandatory commands." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0] + + - label: "Step 6b: Check for optional command AddMoreTime." + PICS: MWOCTRL.S.C01.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [1] + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + constraints: + type: list + contains: [] diff --git a/src/app/tests/suites/certification/Test_TC_NDOCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_NDOCONC_1_1.yaml new file mode 100644 index 00000000000000..a28dae650950a7 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_NDOCONC_1_1.yaml @@ -0,0 +1,339 @@ +# 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. + +name: 145.1.1. [TC-NDOCONC-1.1] Global Attributes with DUT as Server + +PICS: + - NDOCONC.S + +config: + nodeId: 0x12344321 + cluster: "Nitrogen Dioxide Concentration Measurement" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: TH reads from the DUT the FeatureMap attribute. and check + for either bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given NDOCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: NDOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given NDOCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !NDOCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given NDOCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: NDOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given NDOCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !NDOCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given NDOCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: NDOCONC.S.F02 && NDOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given NDOCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !NDOCONC.S.F02 && !NDOCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given NDOCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: NDOCONC.S.F03 && NDOCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given NDOCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !NDOCONC.S.F03 && !NDOCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given NDOCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: NDOCONC.S.F04 && NDOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given NDOCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !NDOCONC.S.F04 && NDOCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given NDOCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: NDOCONC.S.F05 && NDOCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given NDOCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !NDOCONC.S.F05 && !NDOCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: NDOCONC.S.A0007 && NDOCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when NDOCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !NDOCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: TH reads the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: NDOCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when NDOCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !NDOCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: TH reads the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: NDOCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when NDOCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !NDOCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: TH reads the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: NDOCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: TH reads that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + NDOCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !NDOCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: TH reads the optional, feature dependent attribute + LevelValue in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: NDOCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + NDOCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !NDOCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: TH reads from the DUT the EventList attribute." + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_OZCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_OZCONC_1_1.yaml new file mode 100644 index 00000000000000..25b6e3af2d0d57 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_OZCONC_1_1.yaml @@ -0,0 +1,339 @@ +# 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. + +name: 145.1.1. [TC-OZCONC-1.1] Global Attributes with DUT as Server + +PICS: + - OZCONC.S + +config: + nodeId: 0x12344321 + cluster: "Ozone Concentration Measurement" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: TH reads from the DUT the FeatureMap attribute and check for + either bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given OZCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: OZCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given OZCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !OZCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given OZCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: OZCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given OZCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !OZCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given OZCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: OZCONC.S.F02 && OZCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given OZCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !OZCONC.S.F02 && !OZCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given OZCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: OZCONC.S.F03 && OZCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given OZCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !OZCONC.S.F03 && !OZCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given OZCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: OZCONC.S.F04 && OZCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given OZCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !OZCONC.S.F04 && !OZCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given OZCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: OZCONC.S.F05 && OZCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given OZCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !OZCONC.S.F05 && !OZCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: OZCONC.S.A0007 && OZCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when OZCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !OZCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: TH reads the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: OZCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when OZCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !OZCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: TH reads the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: OZCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when OZCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !OZCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: TH reads the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: OZCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + OZCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !OZCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: TH reads the optional, feature dependent attribute + LevelValue in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: OZCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + OZCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !OZCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: TH reads from the DUT the EventList attribute." + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_PCC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PCC_1_1.yaml new file mode 100644 index 00000000000000..d6f59700109714 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_PCC_1_1.yaml @@ -0,0 +1,555 @@ +# Copyright (c) 2021 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. + +name: 15.1.1. [TC-PCC-1.1] Global attributes with server as DUT + +PICS: + - PCC.S + +config: + nodeId: 0x12344321 + cluster: "Pump Configuration and Control" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads the ClusterRevision attribute from the DUT" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 4 + constraints: + type: int16u + + - label: "Step 3a: TH reads the FeatureMap attribute from the DUT" + PICS: + " !PCC.S.F00 && !PCC.S.F01 && !PCC.S.F02 && !PCC.S.F03 && !PCC.S.F04 + && !PCC.S.F05 && !PCC.S.F06 " + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3b: Given PCC.S.F00(PRSCONST) ensure featuremap has the correct + bit set" + PICS: PCC.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given PCC.S.F01(PRSCOMP) ensure featuremap has the correct + bit set" + PICS: PCC.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3d: Given PCC.S.F02(FLW) ensure featuremap has the correct bit + set" + PICS: PCC.S.F02 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4] + + - label: + "Step 3e: Given PCC.S.F03(SPD) ensure featuremap has the correct bit + set" + PICS: PCC.S.F03 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8] + + - label: + "Step 3f: Given PCC.S.F04(TEMP) ensure featuremap has the correct bit + set" + PICS: PCC.S.F04 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10] + + - label: + "Step 3g: Given PCC.S.F05(AUTO) ensure featuremap has the correct bit + set" + PICS: PCC.S.F05 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20] + + - label: + "Step 3h: Given PCC.S.F06(LOCAL) ensure featuremap has the correct bit + set" + PICS: PCC.S.F06 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x40] + + - label: "Step 4a: TH reads the AttributeList attribute from the DUT" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: + [ + 0, + 1, + 2, + 17, + 18, + 19, + 32, + 65528, + 65529, + 65530, + 65531, + 65532, + 65533, + ] + + - label: "Step 4a: TH reads the AttributeList attribute from the DUT" + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: + [0, 1, 2, 17, 18, 19, 32, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads optional attribute(MinConstPressure) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0003 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [3] + + - label: + "Step 4c TH reads optional attribute(MaxConstPressure) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0004 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [4] + + - label: + "Step 4d: TH reads optional attribute(MinCompPressure) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0005 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [5] + + - label: + "Step 4e: TH reads optional attribute(MaxCompPressure) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0006 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [6] + + - label: + "Step 4f: TH reads optional attribute(MinConstSpeed) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0007 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4g: TH reads optional attribute(MaxConstSpeed) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0008 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [8] + + - label: + "Step 4h: TH reads optional attribute(MinConstFlow) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0009 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9] + + - label: + "Step 4i: TH reads optional attribute(MaxConstFlow) attribute in + AttributeList from the DUT" + PICS: PCC.S.A000a + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4j: TH reads optional attribute(MinConstTemp) attribute in + AttributeList from the DUT" + PICS: PCC.S.A000b + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [11] + + - label: + "Step 4k: TH reads optional attribute(MaxConstTemp) attribute in + AttributeList from the DUT" + PICS: PCC.S.A000c + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [12] + + - label: + "Step 4l: TH reads optional attribute(PumpStatus) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0010 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [16] + + - label: + "Step 4m: TH reads optional attribute(Speed) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0014 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [20] + + - label: + "Step 4n: TH reads optional attribute(LifetimeRunningHours) attribute + in AttributeList from the DUT" + PICS: PCC.S.A0015 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [21] + + - label: + "Step 4o: TH reads optional attribute(Power) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0016 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [22] + + - label: + "Step 4p: TH reads optional attribute(LifetimeEnergyConsumed) + attribute in AttributeList from the DUT" + PICS: PCC.S.A0017 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [23] + + - label: + "Step 4q: TH reads optional attribute(ControlMode) attribute in + AttributeList from the DUT" + PICS: PCC.S.A0021 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [33] + + - label: "Step 5a: TH reads EventList from DUT" + PICS: + "PICS_EVENT_LIST_ENABLED && !PCC.S.E00 && !PCC.S.E01 && !PCC.S.E02 && + !PCC.S.E03 && !PCC.S.E04 && !PCC.S.E05 && !PCC.S.E06 && !PCC.S.E07 && + !PCC.S.E08 && !PCC.S.E09 && !PCC.S.E0a && !PCC.S.E0b && !PCC.S.E0c && + !PCC.S.E0d && !PCC.S.E0e && !PCC.S.E0f && !PCC.S.E10 " + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: + "Step 5b: TH reads from the DUT the EventList optional + (SupplyVoltageLow)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E00 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x00] + + - label: + "Step 5c: TH reads from the DUT the EventList optional + (SupplyVoltageHigh)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E01 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x01] + + - label: + "Step 5d: TH reads from the DUT the EventList optional + (PowerMissingPhase)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E02 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x02] + + - label: + "Step 5e: TH reads from the DUT the EventList optional + (SystemPressureLow)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E03 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x03] + + - label: + "Step 5f: TH reads from the DUT the EventList optional + (SystemPressureHigh)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E04 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x04] + + - label: + "Step 5g: TH reads from the DUT the EventList optional + (DryRunning)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E05 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x05] + + - label: + "Step 5h: TH reads from the DUT the EventList optional + (MotorTemperatureHigh)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E06 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x06] + + - label: + "Step 5i: TH reads from the DUT the EventList optional + (PumpMotorFatalFailure)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E07 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x07] + + - label: + "Step 5j: TH reads from the DUT the EventList optional + (ElectronicTemperatureHigh)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E08 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x08] + + - label: + "Step 5k: TH reads from the DUT the EventList optional + (PumpBlocked)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E09 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x09] + + - label: + "Step 5l: TH reads from the DUT the EventList optional + (SensorFailure)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E0a + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x0a] + + - label: + "Step 5m: TH reads from the DUT the EventList optional + (ElectronicNonFatalFailure)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E0b + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x0b] + + - label: + "Step 5n: TH reads from the DUT the EventList optional + (ElectronicFatalFailure)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E0c + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x0c] + + - label: + "Step 5o: TH reads from the DUT the EventList optional + (GeneralFault)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E0d + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x0d] + + - label: + "Step 5p: TH reads from the DUT the EventList optional + (Leakage)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E0e + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x0e] + + - label: + "Step 5q: TH reads from the DUT the EventList optional + (AirDetection)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E0f + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x0f] + + - label: + "Step 5r: TH reads from the DUT the EventList optional + (TurbineOperation)attribute." + PICS: PICS_EVENT_LIST_ENABLED && PCC.S.E10 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0x10] + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: + "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_PMHCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PMHCONC_1_1.yaml new file mode 100644 index 00000000000000..9bbd216e6b1271 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_PMHCONC_1_1.yaml @@ -0,0 +1,336 @@ +# 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. + +name: 145.1.1. [TC-PMHCONC-1.1] Global Attributes with DUT as Server + +PICS: + - PMHCONC.S + +config: + nodeId: 0x12344321 + cluster: "PM1 Concentration Measurement" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: Read the global attribute: FeatureMap and check for either + bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given PMHCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMHCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given PMHCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMHCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given PMHCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMHCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given PMHCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMHCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given PMHCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMHCONC.S.F02 && PMHCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given PMHCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMHCONC.S.F02 && !PMHCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given PMHCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMHCONC.S.F03 && PMHCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given PMHCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMHCONC.S.F03 && !PMHCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given PMHCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMHCONC.S.F04 && PMHCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given PMHCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMHCONC.S.F04 && PMHCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given PMHCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMHCONC.S.F05 && PMHCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given PMHCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMHCONC.S.F05 && !PMHCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 4b: Read the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMHCONC.S.A0007 && PMHCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when PMHCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMHCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: Read the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMHCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when PMHCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMHCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: Read the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMHCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when PMHCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMHCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: Read the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMHCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + PMHCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMHCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: Read the optional, feature dependent attribute LevelValue in + AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMHCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + PMHCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMHCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: Read the global attribute: EventList" + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: Read the global attribute: AcceptedCommandList" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: Read the global attribute: GeneratedCommandList" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_PMICONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PMICONC_1_1.yaml new file mode 100644 index 00000000000000..57d14f10ca068e --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_PMICONC_1_1.yaml @@ -0,0 +1,336 @@ +# 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. + +name: 145.1.1. [TC-PMICONC-1.1] Global Attributes with DUT as Server + +PICS: + - PMICONC.S + +config: + nodeId: 0x12344321 + cluster: "PM2.5 Concentration Measurement" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: Read the global attribute: FeatureMap and check for either + bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given PMICONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMICONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given PMICONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMICONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given PMICONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMICONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given PMICONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMICONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given PMICONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMICONC.S.F02 && PMICONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given PMICONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMICONC.S.F02 && !PMICONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given PMICONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMICONC.S.F03 && PMICONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given PMICONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMICONC.S.F03 && !PMICONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given PMICONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMICONC.S.F04 && PMICONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given PMICONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMICONC.S.F04 && !PMICONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given PMICONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMICONC.S.F05 && PMICONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given PMICONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMICONC.S.F05 && !PMICONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 4b: Read the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMICONC.S.A0007 && PMICONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when PMICONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMICONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: Read the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMICONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when PMICONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMICONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: Read the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMICONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when PMICONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMICONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: Read the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMICONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + PMICONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMICONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: Read the optional, feature dependent attribute LevelValue in + AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMICONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + PMICONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMICONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: Read the global attribute: EventList" + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: Read the global attribute: AcceptedCommandList" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: Read the global attribute: GeneratedCommandList" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_PMKCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PMKCONC_1_1.yaml new file mode 100644 index 00000000000000..26c5797b17288d --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_PMKCONC_1_1.yaml @@ -0,0 +1,336 @@ +# 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. + +name: 145.1.1. [TC-PMKCONC-1.1] Global Attributes with DUT as Server + +PICS: + - PMKCONC.S + +config: + nodeId: 0x12344321 + cluster: "PM10 Concentration Measurement" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: Read the global attribute: FeatureMap and check for either + bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given PMKCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMKCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given PMKCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMKCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given PMKCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMKCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given PMKCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMKCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given PMKCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMKCONC.S.F02 && PMKCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given PMKCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMKCONC.S.F02 && !PMKCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given PMKCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMKCONC.S.F03 && PMKCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given PMKCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMKCONC.S.F03 && !PMKCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given PMKCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMKCONC.S.F04 && PMKCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given PMKCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMKCONC.S.F04 && !PMKCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given PMKCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: PMKCONC.S.F05 && PMKCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given PMKCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !PMKCONC.S.F05 && !PMKCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: Read the global attribute: AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 4b: Read the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMKCONC.S.A0007 && PMKCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when PMKCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMKCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: Read the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMKCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when PMKCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMKCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: Read the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMKCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when PMKCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMKCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: Read the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMKCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + PMKCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMKCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: Read the optional, feature dependent attribute LevelValue in + AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: PMKCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + PMKCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !PMKCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: Read the global attribute: EventList" + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: Read the global attribute: AcceptedCommandList" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: Read the global attribute: GeneratedCommandList" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_PWRTL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_PWRTL_1_1.yaml new file mode 100644 index 00000000000000..5d64bedf47ebb3 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_PWRTL_1_1.yaml @@ -0,0 +1,143 @@ +# Copyright (c) 2021 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. + +name: 44.1.1. [TC-PWRTL-1.1] Global Attributes with DUT as Server + +PICS: + - PWRTL.S + +config: + nodeId: 0x12344321 + cluster: "Power Topology" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads the ClusterRevision from DUT" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 1 + constraints: + type: int16u + + - label: + "Step 3a: Given PWRTL.S.F00(Node) ensure featuremap has the correct + bit set" + PICS: PWRTL.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + hasMasksClear: [0x2, 0x4, 0x8] + + - label: + "Step 3b: Given PWRTL.S.F01(Leaf) ensure featuremap has the correct + bit set" + PICS: PWRTL.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + hasMasksClear: [0x1, 0x4, 0x8] + + - label: + "Step 3c: Given PWRTL.S.F02(Set) ensure featuremap has the correct bit + set" + PICS: PWRTL.S.F02 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4] + hasMasksClear: [0x1, 0x2] + + - label: + "Step 3d: Given PWRTL.S.F03(Dynamic Power Flow) ensure featuremap has + the correct bit set" + PICS: PWRTL.S.F03 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x8] + + - label: "Step 4a: TH reads AttributeList from DUT" + PICS: " !PWRTL.S.F02 && !PWRTL.S.F03 " + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [] + + - label: + "Step 4b: TH reads feature dependent attribute(AvailableEndpoints) + AttributeList from DUT" + PICS: PWRTL.S.F02 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0] + + - label: + "Step 4c: TH reads feature dependent attribute(ActiveEndpoints) + AttributeList from DUT" + PICS: "PWRTL.S.F02 && PWRTL.S.F03" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1] + + - label: "Step 5*: TH reads EventList attribute from DUT" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads the AcceptedCommandList attribute from the DUT" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads the GeneratedCommandList attribute from the DUT" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_RNCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_RNCONC_1_1.yaml new file mode 100644 index 00000000000000..8efffd3ec61792 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_RNCONC_1_1.yaml @@ -0,0 +1,339 @@ +# 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. + +name: 145.1.1. [TC-RNCONC-1.1] Global Attributes with DUT as Server + +PICS: + - RNCONC.S + +config: + nodeId: 0x12344321 + cluster: "Radon Concentration Measurement" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: TH reads from the DUT the FeatureMap attribute and check for + either bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given RNCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: RNCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given RNCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !RNCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given RNCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: RNCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given RNCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !RNCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given RNCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: RNCONC.S.F02 && RNCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given RNCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !RNCONC.S.F02 && !RNCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given RNCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: RNCONC.S.F03 && RNCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given RNCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !RNCONC.S.F03 && !RNCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given RNCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: RNCONC.S.F04 && RNCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given RNCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !RNCONC.S.F04 && RNCONC.S.F00" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given RNCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: RNCONC.S.F05 && RNCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given RNCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !RNCONC.S.F05 && !RNCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: RNCONC.S.A0007 && RNCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when RNCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !RNCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: TH reads the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: RNCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when RNCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !RNCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: TH reads the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: RNCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when RNCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !RNCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: TH reads the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: RNCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + RNCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !RNCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: TH reads the optional, feature dependent attribute + LevelValue in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: RNCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + RNCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !RNCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: TH reads from the DUT the EventList attribute." + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_SMOKECO_1_1.yaml b/src/app/tests/suites/certification/Test_TC_SMOKECO_1_1.yaml new file mode 100644 index 00000000000000..c1f997bb3939dc --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_SMOKECO_1_1.yaml @@ -0,0 +1,269 @@ +# 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. + +name: 4.1.1. [TC-SMOKECO-1.1] Global Attributes with DUT as Server + +PICS: + - SMOKECO.S + +config: + nodeId: 0x12344321 + cluster: "Smoke CO Alarm" + endpoint: 1 + +tests: + - label: "Step 1: Commission DUT to TH" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads the ClusterRevision attribute from the DUT" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 1 + constraints: + type: int16u + + - label: "Step 3a: TH reads from the DUT the FeatureMap attribute" + PICS: "!SMOKECO.S.F00 && !SMOKECO.S.F01" + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3b: TH reads from the DUT the FeatureMap attribute(Smoke Alarm)" + PICS: SMOKECO.S.F00 && !SMOKECO.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 1 + constraints: + type: bitmap32 + + - label: "Step 3c: TH reads from the DUT the FeatureMap attribute(CO Alarm)" + PICS: SMOKECO.S.F01 && !SMOKECO.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 2 + constraints: + type: bitmap32 + + - label: + "Step 3d: TH reads from the DUT the FeatureMap attribute(Smoke Alarm & + CO Alarm)" + PICS: SMOKECO.S.F00 && SMOKECO.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 3 + constraints: + type: bitmap32 + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 3, 5, 6, 7, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads from the DUT the AttributeList + attribute(SmokeState)" + PICS: SMOKECO.S.A0001 && SMOKECO.S.F00 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [1] + + - label: + "Step 4c: TH reads from the DUT the AttributeList attribute(COState)" + PICS: SMOKECO.S.A0002 && SMOKECO.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [2] + + - label: + "Step 4d: TH reads from the DUT the AttributeList + attribute(DeviceMuted)" + PICS: SMOKECO.S.A0004 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [4] + + - label: + "Step 4e: TH reads from the DUT the AttributeList + attribute(InterconnectSmokeAlarm)" + PICS: SMOKECO.S.A0008 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [8] + + - label: + "Step 4f: TH reads from the DUT the AttributeList + attribute(InterconnectCOAlarm)" + PICS: SMOKECO.S.A0009 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9] + + - label: + "Step 4g: TH reads from the DUT the AttributeList + attribute(ContaminationState)" + PICS: SMOKECO.S.A000a + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4h: TH reads from the DUT the AttributeList + attribute(SmokeSensitivityLevel)" + PICS: SMOKECO.S.A000b + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [11] + + - label: + "Step 4i: TH reads from the DUT the AttributeList + attribute(ExpiryDate)" + PICS: SMOKECO.S.A000c + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [12] + + - 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: [2, 3, 4, 5, 10] + + - label: + "Step 5b: TH reads from the DUT the EventList attribute(SmokeAlarm)" + PICS: PICS_EVENT_LIST_ENABLED && SMOKECO.S.E00 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [0] + + - label: "Step 5c: TH reads from the DUT the EventList attribute(COAlarm)" + PICS: PICS_EVENT_LIST_ENABLED && SMOKECO.S.E01 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [1] + + - label: + "Step 5d: TH reads from the DUT the EventList attribute(AlarmMuted)" + PICS: PICS_EVENT_LIST_ENABLED && SMOKECO.S.E06 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [6] + + - label: "Step 5e: TH reads from the DUT the EventList attribute(MuteEnded)" + PICS: PICS_EVENT_LIST_ENABLED && SMOKECO.S.E07 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [7] + + - label: + "Step 5f: TH reads from the DUT the EventList + attribute(InterconnectSmokeAlarm)" + PICS: PICS_EVENT_LIST_ENABLED && SMOKECO.S.E08 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [8] + + - label: + "Step 5g: TH reads from the DUT the EventList + attribute(InterconnectCOAlarm)" + PICS: PICS_EVENT_LIST_ENABLED && SMOKECO.S.E09 + command: "readAttribute" + attribute: "EventList" + response: + constraints: + type: list + contains: [9] + + - label: "Step 6a: TH reads from the DUT the AcceptedCommandList attribute" + PICS: "!SMOKECO.S.C00.Rsp" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 6b: TH reads from the DUT the AcceptedCommandList attribute" + PICS: SMOKECO.S.C00.Rsp + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0] + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml b/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml new file mode 100644 index 00000000000000..fdb1e4137ce468 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_SWTCH_1_1.yaml @@ -0,0 +1,184 @@ +# Copyright (c) 2021 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. + +name: 74.1.1. [TC-SWTCH-1.1] Global Attributes with DUT as Server + +PICS: + - SWTCH.S + +config: + nodeId: 0x12344321 + cluster: "Switch" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 2 + constraints: + type: int16u + + - label: + "Step 3: TH reads from the DUT the FeatureMap attribute and ensures no + invalid bits." + PICS: + "!SWTCH.S.F00 && !SWTCH.S.F01 && !SWTCH.S.F02 && !SWTCH.S.F03 && + !SWTCH.S.F04 && !SWTCH.S.F05" + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3a: Given SWTCH.S.F00(LS) ensure featuremap has the correct bits + set" + PICS: SWTCH.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x01] + hasMasksClear: [0x02, 0x04, 0x08, 0x10, 0x20] + + - label: + "Step 3b: Given SWTCH.S.F01(MS) ensure featuremap has the correct bits + set: checks on !MSL when MS feature present." + PICS: SWTCH.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + hasMasksClear: [0x1] + + - label: + "Step 3b: Given SWTCH.S.F02(MSR) ensure featuremap has the correct + bits set: checks on MS & !AS & MSR." + PICS: SWTCH.S.F02 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2, 0x4] + hasMasksClear: [0x1, 0x20] + + - label: + "Step 3b: Given SWTCH.S.F03(MSL) ensure featuremap has the correct + bits set: LS cannot be enabled if MSL." + PICS: SWTCH.S.F03 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2, 0x8] + hasMasksClear: [0x1] + + - label: + "Step 3b: Given SWTCH.S.F04(MSM) ensure featuremap has the correct + bits set: LS cannot be enabled if MSM." + PICS: SWTCH.S.F04 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2, 0x10] + hasMasksClear: [0x1] + + - label: + "Step 3b: Given SWTCH.S.F05(AS) ensure featuremap has the correct bits + set: LS and MSR cannot be enabled if AS, and MSM is required by AS." + PICS: SWTCH.S.F05 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2, 0x10, 0x20] + hasMasksClear: [0x1, 0x4] + + - label: "Step 3c: LS and MS are mutually exclusive (1/2)." + PICS: "SWTCH.S.F00" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + hasMasksClear: [0x2] + + - label: "Step 3c: LS and MS are mutually exclusive (2/2)." + PICS: "SWTCH.S.F01" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + hasMasksClear: [0x1] + + - label: + "Step 4: TH reads from the DUT the AttributeList attribute, verify + that attribute MultiPressMax is present with MSM feature." + PICS: "SWTCH.S.F04" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [2] + + - label: + "Step 4: TH reads from the DUT the AttributeList attribute, verify + mandatory attributes." + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 65528, 65529, 65531, 65532, 65533] + + - label: "Step 5: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_TCTL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_TCTL_1_1.yaml new file mode 100644 index 00000000000000..680b359d2b7d32 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_TCTL_1_1.yaml @@ -0,0 +1,158 @@ +# 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. + +name: 178.1.1. [TC-TCTL-1.1] Global attributes with DUT as Server + +PICS: + - TCTL.S + +config: + nodeId: 0x12344321 + cluster: "Temperature Control" + endpoint: 1 + +tests: + - label: "Step 1: Wait for the commissioned device to be retrieved" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 1 + constraints: + type: int16u + + - label: "Step 3a: TH reads from the DUT the FeatureMap attribute" + command: "readAttribute" + attribute: "FeatureMap" + PICS: "!TCTL.S.F00 && !TCTL.S.F01 && !TCTL.S.F02" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3b: TH reads from the DUT the FeatureMap attribute. bit 0: SHALL + be 1 if and only if TCTL.S.F00(TN) & !TCTL.S.F01(TL)" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TCTL.S.F00 && !TCTL.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: TH reads from the DUT the FeatureMap attribute. bit 1: SHALL + be 1 if and only if TCTL.S.F01(TL) & !TCTL.S.F00(TN)" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TCTL.S.F01 && !TCTL.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3d: TH reads from the DUT the FeatureMap attribute. bit 2: SHALL + be 1 if and only if TCTL.S.F02(A_STEP) & TCTL.S.F00(TN)" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TCTL.S.F02 && TCTL.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads from the DUT the AttributeList attribute. 0x0000, + 0x0001, 0x0002: SHALL be included if and only if TCTL.S.F00(TN)" + PICS: TCTL.S.F00 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 1, 2] + + - label: + "Step 4c: TH reads from the DUT the AttributeList attribute. 0x0003: + SHALL be included if and only if TCTL.S.F02(A_STEP)" + PICS: TCTL.S.F02 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [3] + + - label: + "Step 4d: TH reads from the DUT the AttributeList attribute. 0x0004 & + 0x0005: SHALL be included if and only if TCTL.S.F01(TL)" + PICS: TCTL.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [4, 5] + + - label: "Step 5: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0] + + - label: "Step 6: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the EventList attribute." + 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_1_1.yaml b/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml new file mode 100644 index 00000000000000..ef8f688bf5e89c --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml @@ -0,0 +1,639 @@ +# Copyright (c) 2021 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. + +name: 42.1.1. [TC-TSTAT-1.1] Global Attributes with DUT as Server + +PICS: + - TSTAT.S + +config: + nodeId: 0x12344321 + cluster: "Thermostat" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)." + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 7 + constraints: + type: int16u + + - 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" + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3b: Given TSTAT.S.F00(HEAT ensure featuremap has the correct bit + set" + PICS: TSTAT.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given TSTAT.S.F01(COOL) ensure featuremap has the correct + bit set" + PICS: TSTAT.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3d: Given TSTAT.S.F02(OCC) ensure featuremap has the correct bit + set" + PICS: TSTAT.S.F02 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4] + + - label: + "Step 3e: Given TSTAT.S.F03(SCH) ensure featuremap has the correct bit + set" + PICS: TSTAT.S.F03 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8] + + - label: + "Step 3f: Given TSTAT.S.F04(SB) ensure featuremap has the correct bit + set" + PICS: TSTAT.S.F04 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10] + + - label: + "Step 3g: Given TSTAT.S.F05(AUTO) ensure featuremap has the correct + bit set" + PICS: TSTAT.S.F05 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20] + + - label: + "Step 3h: Given TSTAT.S.F06(LTNE) ensure featuremap has the correct + bit set" + PICS: TSTAT.S.F06 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x40] + + - label: + "Step 3i: Given TSTAT.S.F08(PRES ensure featuremap has the correct bit + set" + PICS: TSTAT.S.F08 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x100] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 27, 28, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 27, 28, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) attribute + in AttributeList" + PICS: TSTAT.S.F00 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [18] + - label: + "Step 4c: TH reads the Feature dependent(TSTAT.S.F01(COOL)) attribute + in AttributeList" + PICS: TSTAT.S.F01 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [17] + + - label: + "Step 4d: TH reads the Feature dependent(TSTAT.S.F02(OCC)) attribute + in AttributeList" + PICS: TSTAT.S.F02 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [2] + + - label: + "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" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [20] + + - label: + "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" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [19] + + - label: + "Step 4g: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) attribute + in AttributeList" + PICS: TSTAT.S.F05 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [17, 18, 25] + + - label: + "Step 4h: TH reads the Feature dependent(TSTAT.S.F03(SCH)) attribute + in AttributeList" + PICS: TSTAT.S.F03 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [32, 33, 34] + + - label: + "Step 4i: TH reads the Feature dependent(TSTAT.S.F04(SB)) attribute in + AttributeList" + PICS: TSTAT.S.F04 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [52, 53, 54] + + - label: + "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" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [55, 56, 57] + + - label: "Step 4k: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0001 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [1] + + - label: "Step 4l: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0009 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [9] + + - label: "Step 4m: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0010 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [16] + + - label: "Step 4n: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A001a + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [26] + + - label: "Step 4o: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A001d + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [29] + + - label: "Step 4p: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0023 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [35] + + - label: "Step 4q: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0024 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [36] + + - label: "Step 4r: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0025 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [37] + + - label: "Step 4s: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0029 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [41] + + - label: "Step 4t: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0030 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [48] + + - label: "Step 4u: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0031 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [49] + + - label: "Step 4x: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0032 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [50] + + - label: "Step 4y: TH reads the optional attribute: AttributeList" + PICS: TSTAT.S.A003a + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [58] + + - label: "Step 4z: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0040 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [64] + + - label: "Step 4A: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0041 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [65] + + - label: "Step 4B: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0042 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [66] + + - label: "Step 4C: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0043 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [67] + + - label: "Step 4D: TH reads the optional attribute: AttributeList" + PICS: TSTAT.S.A0044 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [68] + + - label: "Step 4E: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0045 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [69] + + - label: "Step 4F: TH reads the optional attribute in AttributeList" + PICS: TSTAT.S.A0046 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [70] + + - label: "Step 4g: TH reads the optional attribute: AttributeList" + PICS: TSTAT.S.A0047 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [71] + + - label: + "Step 4H: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional + attribute in AttributeList" + PICS: TSTAT.S.F00 && TSTAT.S.A0003 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [3] + + - label: + "Step 4I: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional + attribute in AttributeList" + PICS: TSTAT.S.F00 && TSTAT.S.A0004 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [4] + + - label: + "Step 4J: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional + attribute in AttributeList" + PICS: TSTAT.S.F00 && TSTAT.S.A0008 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [8] + + - label: + "Step 4K: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional + attribute in AttributeList" + PICS: TSTAT.S.F00 && TSTAT.S.A0015 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [21] + + - label: + "Step 4L: TH reads the Feature dependent(TSTAT.S.F00(HEAT)) optional + attribute in AttributeList" + PICS: TSTAT.S.F00 && TSTAT.S.A0016 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [22] + + - label: + "Step 4M: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional + attribute in AttributeList" + PICS: TSTAT.S.F01 && TSTAT.S.A0005 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [5] + + - label: + "Step 4N: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional + attribute in AttributeList" + PICS: TSTAT.S.F01 && TSTAT.S.A0007 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [6] + + - label: + "Step 4O: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional + attribute in AttributeList" + PICS: TSTAT.S.F01 && TSTAT.S.A0007 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4P: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional + attribute in AttributeList" + PICS: TSTAT.S.F01 && TSTAT.S.A0017 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [23] + + - label: + "Step 4Q: TH reads the Feature dependent(TSTAT.S.F01(COOL)) optional + attribute in AttributeList" + PICS: TSTAT.S.F01 && TSTAT.S.A0018 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [24] + + - label: + "Step 4R: TH reads the Feature dependent(TSTAT.S.F05(AUTO)) optional + attribute in AttributeList" + PICS: TSTAT.S.F05 && TSTAT.S.A001e + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [30] + + - label: + "Step 4j: TH reads the Feature dependent(TSTAT.S.F08(PRES) attribute + in AttributeList" + PICS: TSTAT.S.F08 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [72, 74, 78, 80] + + - 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: + constraints: + type: list + contains: [0] + + - label: + "Step 6b: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in + AcceptedCommandList" + PICS: TSTAT.S.F03 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [1, 2, 3] + + - label: + "Step 6c: TH reads Feature dependent(TSTAT.S.F08(PRES)) commands in + AcceptedCommandList" + PICS: TSTAT.S.F08 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [6, 254] + + - label: + "Step 7a: TH reads Feature dependent(TSTAT.S.F03(SCH)) commands in + GeneratedCommandList" + PICS: TSTAT.S.F03 + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + constraints: + type: list + contains: [0] + + - label: + "Step 7b: TH reads Feature dependent(TSTAT.S.F08(PRES)) commands in + the GeneratedCommandList attribute." + PICS: TSTAT.S.F08 & TSTAT.S.Cfe.Rsp + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [0xFD] # AtomicResponse + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_TVOCCONC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_TVOCCONC_1_1.yaml new file mode 100644 index 00000000000000..8ccf1825791667 --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_TVOCCONC_1_1.yaml @@ -0,0 +1,339 @@ +# 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. + +name: 145.1.1. [TC-TVOCCONC-1.1] Global Attributes with DUT as Server + +PICS: + - TVOCCONC.S + +config: + nodeId: 0x12344321 + cluster: "Total Volatile Organic Compounds Concentration Measurement" + endpoint: 1 + +tests: + - label: + "Step 1: Commission DUT to TH (can be skipped if done in a preceding + test)" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + - label: "Step 2: TH reads from the DUT the ClusterRevision attribute." + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 3 + constraints: + type: int16u + + - label: + "Step 3a: TH reads from the DUT the FeatureMap attribute and check for + either bit 0 or 1 set" + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x03] + + - label: + "Step 3b: Given TVOCCONC.S.F00(MEA) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TVOCCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given TVOCCONC.S.F00(MEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !TVOCCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x1] + + - label: + "Step 3d: Given TVOCCONC.S.F01(LEV) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TVOCCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3e: Given TVOCCONC.S.F01(LEV) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !TVOCCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x2] + + - label: + "Step 3f: Given TVOCCONC.S.F02(MED) ensure featuremap has the correct + bit set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TVOCCONC.S.F02 && TVOCCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4, 0x2] + + - label: + "Step 3g: Given TVOCCONC.S.F02(MED) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !TVOCCONC.S.F02 && !TVOCCONC.S.F01 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x4] + + - label: + "Step 3h: Given TVOCCONC.S.F03(CRI) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TVOCCONC.S.F03 && TVOCCONC.S.F01 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8, 0x2] + + - label: + "Step 3i: Given TVOCCONC.S.F03(CRI) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !TVOCCONC.S.F03 && !TVOCCONC.S.F01" + response: + constraints: + type: bitmap32 + hasMasksClear: [0x8] + + - label: + "Step 3j: Given TVOCCONC.S.F04(PEA) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TVOCCONC.S.F04 && TVOCCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10, 0x1] + + - label: + "Step 3k: Given TVOCCONC.S.F04(PEA) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !TVOCCONC.S.F04 && !TVOCCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x10] + + - label: + "Step 3l: Given TVOCCONC.S.F05(AVG) ensure featuremap has the correct + bits set" + command: "readAttribute" + attribute: "FeatureMap" + PICS: TVOCCONC.S.F05 && TVOCCONC.S.F00 + response: + constraints: + type: bitmap32 + hasMasksSet: [0x20, 0x1] + + - label: + "Step 3m: Given TVOCCONC.S.F05(AVG) is not set, ensure featuremap has + the correct bit clear" + command: "readAttribute" + attribute: "FeatureMap" + PICS: " !TVOCCONC.S.F05 && !TVOCCONC.S.F00 " + response: + constraints: + type: bitmap32 + hasMasksClear: [0x20] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute" + command: "readAttribute" + attribute: "AttributeList" + PICS: PICS_EVENT_LIST_ENABLED + response: + constraints: + type: list + contains: [9, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: "Step 4a: TH reads from the DUT the AttributeList attribute." + command: "readAttribute" + attribute: "AttributeList" + PICS: "!PICS_EVENT_LIST_ENABLED" + response: + constraints: + type: list + contains: [9, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads the optional attribute Uncertainty in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: TVOCCONC.S.A0007 && TVOCCONC.S.F00 + response: + constraints: + type: list + contains: [7] + + - label: + "Step 4c: Check the optional attribute Uncertainty is excluded from + AttributeList when TVOCCONC.S.A0007 is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !TVOCCONC.S.A0007 " + response: + constraints: + type: list + excludes: [7] + + - label: + "Step 4d: TH reads the optional, feature dependent attributes + MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit + in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: TVOCCONC.S.F00 + response: + constraints: + type: list + contains: [0, 1, 2, 8] + + - label: + "Step 4e: Check that MeasuredValue, MinMeasuredValue, + MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from + AttributeList when TVOCCONC.S.F00 (MEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !TVOCCONC.S.F00 " + response: + constraints: + type: list + excludes: [0, 1, 2, 7, 8] + + - label: + "Step 4f: TH reads the optional, feature dependent attributes + PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: TVOCCONC.S.F04 + response: + constraints: + type: list + contains: [3, 4] + + - label: + "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are + excluded from AttributeList when TVOCCONC.S.F04 (PEA) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !TVOCCONC.S.F04 " + response: + constraints: + type: list + excludes: [3, 4] + + - label: + "Step 4h: TH reads the optional, feature dependent attributes + AverageMeasuredValue AverageMeasuredValueWindow in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: TVOCCONC.S.F05 + response: + constraints: + type: list + contains: [5, 6] + + - label: + "Step 4i: Check that AverageMeasuredValue and + AverageMeasuredValueWindow are excluded from AttributeList when + TVOCCONC.S.F05 (AVG) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !TVOCCONC.S.F05 " + response: + constraints: + type: list + excludes: [5, 6] + + - label: + "Step 4j: TH reads the optional, feature dependent attribute + LevelValue in AttributeList" + command: "readAttribute" + attribute: "AttributeList" + PICS: TVOCCONC.S.F01 + response: + constraints: + type: list + contains: [10] + + - label: + "Step 4k: Check that LevelValue is excluded from AttributeList when + TVOCCONC.S.F01 (LEV) is not set" + command: "readAttribute" + attribute: "AttributeList" + PICS: " !TVOCCONC.S.F01 " + response: + constraints: + type: list + excludes: [10] + + - label: "Step 5: TH reads from the DUT the EventList attribute" + command: "readAttribute" + attribute: "EventList" + PICS: PICS_EVENT_LIST_ENABLED + response: + value: [] + constraints: + type: list + + - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute." + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute." + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_WNCV_1_1.yaml b/src/app/tests/suites/certification/Test_TC_WNCV_1_1.yaml new file mode 100644 index 00000000000000..cde5ae4934b20d --- /dev/null +++ b/src/app/tests/suites/certification/Test_TC_WNCV_1_1.yaml @@ -0,0 +1,248 @@ +# Copyright (c) 2021 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. + +name: Window Covering [TC-WNCV-1.1] Global attributes [DUT as Server] + +PICS: + - WNCV.S + +config: + nodeId: 0x12344321 + cluster: "Window Covering" + endpoint: 1 + +tests: + - label: "Step 1: Commission DUT to TH" + cluster: "DelayCommands" + command: "WaitForCommissionee" + arguments: + values: + - name: "nodeId" + value: nodeId + + ### MANDATORY GLOBAL Attributes + ### Attribute[0xFFFD]: ClusterRevision ======================================= + - label: + "Step 2: TH reads from the DUT the (0xFFFD) ClusterRevision attribute" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 5 + constraints: + type: int16u + minValue: 5 + maxValue: 200 + + - label: "Step 3a: TH reads from the DUT the (0xFFFC) FeatureMap attribute" + PICS: + "!WNCV.S.F00 && !WNCV.S.F01 && !WNCV.S.F02 && !WNCV.S.F03 && + !WNCV.S.F04 " + command: "readAttribute" + attribute: "FeatureMap" + response: + value: 0 + constraints: + type: bitmap32 + + - label: + "Step 3b: Given WNCV.S.F00(LF) ensure featuremap has the correct bit + set" + PICS: WNCV.S.F00 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x1] + + - label: + "Step 3c: Given WNCV.S.F01(TL) ensure featuremap has the correct bit + set" + PICS: WNCV.S.F01 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x2] + + - label: + "Step 3d: Given WNCV.S.F02(PA_LF) ensure featuremap has the correct + bit set" + PICS: WNCV.S.F02 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x4] + + - label: + "Step 3e: Given WNCV.S.F03(ABS) ensure featuremap has the correct bit + set" + PICS: WNCV.S.F03 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x8] + + - label: + "Step 3f: Given WNCV.S.F04(PA_TL) ensure featuremap has the correct + bit set" + PICS: WNCV.S.F04 + command: "readAttribute" + attribute: "FeatureMap" + response: + constraints: + type: bitmap32 + hasMasksSet: [0x10] + + - label: + "Step 4a: TH reads from the DUT the (0xFFFB) AttributeList attribute" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: + [0, 7, 10, 13, 23, 65528, 65529, 65530, 65531, 65532, 65533] + + - label: + "Step 4a: TH reads from the DUT the (0xFFFB) AttributeList attribute" + PICS: "!PICS_EVENT_LIST_ENABLED" + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [0, 7, 10, 13, 23, 65528, 65529, 65531, 65532, 65533] + + - label: + "Step 4b: TH reads optional attribute(SafetyStatus) in AttributeList" + PICS: WNCV.S.A001a + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [26] + + - label: + "Step 4c: TH reads the Feature dependent(WNCV.S.F00 & WNCV.S.F02 & + WNCV.S.F03) attribute in AttributeList" + PICS: WNCV.S.F00 && WNCV.S.F02 && WNCV.S.F03 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [16, 17] + + - label: + "Step 4d: TH reads the Feature dependent(WNCV.S.F00 & WNCV.S.F02 ) + attribute in AttributeList" + PICS: WNCV.S.F00 && WNCV.S.F02 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [11, 14] + + - label: + "Step 4e: TH reads the Feature dependent(WNCV.S.F01 & WNCV.S.F04 & + WNCV.S.F03) attribute in AttributeList" + PICS: WNCV.S.F01 && WNCV.S.F04 && WNCV.S.F03 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [18, 19] + + - label: + "Step 4f: TH reads the Feature dependent(WNCV.S.F01 & WNCV.S.F04 ) + attribute in AttributeList" + PICS: WNCV.S.F01 && WNCV.S.F04 + command: "readAttribute" + attribute: "AttributeList" + response: + constraints: + type: list + contains: [12, 15] + + - label: "Step 5: TH reads from the DUT the (0xFFFA) EventList attribute" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + + - label: + "Step 6a: TH reads from the DUT the (0xFFF9) AcceptedCommandList + attribute" + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0, 1, 2] + + - label: + "Step 6b: TH reads Feature dependent(WNCV.S.F00 & WNCV.S.F02) command + in AcceptedCommandList" + PICS: WNCV.S.F00 && WNCV.S.F02 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [5] + + - label: + "Step 6c: TH reads Feature dependent(WNCV.S.F01 & WNCV.S.F03) command + in AcceptedCommandList" + PICS: WNCV.S.F01 && WNCV.S.F03 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [7] + + - label: + "Step 6d: TH reads Feature dependent(WNCV.S.F01 & WNCV.S.F04) command + in AcceptedCommandList" + PICS: WNCV.S.F01 && WNCV.S.F04 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [8] + + - label: + "Step 7: TH reads from the DUT the (0xFFF8) GeneratedCommandList + attribute" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list