diff --git a/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml index f6629faaaef1f1..9e6685b6732b21 100644 --- a/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_BOOL_1_1.yaml @@ -48,9 +48,9 @@ tests: command: "readAttribute" attribute: "AttributeList" response: - value: [0, 65528, 65529, 65531, 65532, 65533] constraints: type: list + contains: [0, 65528, 65529, 65531, 65532, 65533] - label: "Read the global attribute: AcceptedCommandList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml index 79b5213dd31d1c..e79f7c2a0ef708 100644 --- a/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_CC_1_1.yaml @@ -37,14 +37,14 @@ tests: type: uint16 - label: "Read the global attribute constraints : FeatureMap" - PICS: - PICS_SKIP_SAMPLE_APP && (CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03) + PICS: (CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03) command: "readAttribute" attribute: "FeatureMap" response: - value: 1 constraints: type: map32 + minValue: 0 + maxValue: 31 - label: "Read the global attribute: AttributeList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_DESC_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DESC_1_1.yaml index 686de6f8cd87dc..de618503146889 100644 --- a/src/app/tests/suites/certification/Test_TC_DESC_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DESC_1_1.yaml @@ -49,9 +49,9 @@ tests: command: "readAttribute" attribute: "AttributeList" response: - value: [0, 1, 2, 3, 65528, 65529, 65531, 65532, 65533] constraints: type: list + contains: [0, 1, 2, 3, 65528, 65529, 65531, 65532, 65533] - label: "Read the global attribute: AcceptedCommandList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_ILL_2_1.yaml b/src/app/tests/suites/certification/Test_TC_ILL_2_1.yaml index 437aa2092b8c6e..42f7ec252b227d 100644 --- a/src/app/tests/suites/certification/Test_TC_ILL_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_ILL_2_1.yaml @@ -29,13 +29,12 @@ tests: value: nodeId - label: "TH reads MeasuredValue attribute from DUT" - PICS: PICS_SKIP_SAMPLE_APP command: "readAttribute" attribute: "MeasuredValue" response: constraints: type: uint16 - minValue: 1 + minValue: 0 maxValue: 65534 - label: "TH reads MinMeasuredValue attribute from DUT" diff --git a/src/app/tests/suites/certification/Test_TC_I_1_1.yaml b/src/app/tests/suites/certification/Test_TC_I_1_1.yaml index 717969e0c0823c..0172010ca6af04 100644 --- a/src/app/tests/suites/certification/Test_TC_I_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_I_1_1.yaml @@ -48,9 +48,9 @@ tests: command: "readAttribute" attribute: "AttributeList" response: - value: [0, 1, 65528, 65529, 65531, 65532, 65533] constraints: type: list + contains: [0, 1, 65528, 65529, 65531, 65532, 65533] - label: "Read the global attribute: AcceptedCommandList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_MC_1_11.yaml b/src/app/tests/suites/certification/Test_TC_MC_1_11.yaml index 136a6c3cdf321c..a91e1a9b5d161f 100644 --- a/src/app/tests/suites/certification/Test_TC_MC_1_11.yaml +++ b/src/app/tests/suites/certification/Test_TC_MC_1_11.yaml @@ -43,9 +43,10 @@ tests: command: "readAttribute" attribute: "FeatureMap" response: - value: 1 constraints: type: map32 + minValue: 0 + maxValue: 3 - label: "Read the global attribute: AttributeList" PICS: MC_CONTENTLAUNCHER.S.A0000 && MC_CONTENTLAUNCHER.S.A0001 diff --git a/src/app/tests/suites/certification/Test_TC_MC_1_2.yaml b/src/app/tests/suites/certification/Test_TC_MC_1_2.yaml index 64a70312eaa054..0dd4c86dd9fa17 100644 --- a/src/app/tests/suites/certification/Test_TC_MC_1_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_MC_1_2.yaml @@ -42,9 +42,10 @@ tests: command: "readAttribute" attribute: "FeatureMap" response: - value: 1 constraints: type: map32 + minValue: 0 + maxValue: 7 - label: "Read the global attribute: AttributeList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_MC_1_6.yaml b/src/app/tests/suites/certification/Test_TC_MC_1_6.yaml index 88c7edaa0bb2e4..1e84b7774c842e 100644 --- a/src/app/tests/suites/certification/Test_TC_MC_1_6.yaml +++ b/src/app/tests/suites/certification/Test_TC_MC_1_6.yaml @@ -41,9 +41,10 @@ tests: command: "readAttribute" attribute: "FeatureMap" response: - value: 1 constraints: type: map32 + minValue: 0 + maxValue: 3 - label: "Read the global attribute: AttributeList" PICS: MC_CHANNEL.S.A0000 && MC_CHANNEL.S.A0001 && MC_CHANNEL.S.A0002 diff --git a/src/app/tests/suites/certification/Test_TC_MC_1_7.yaml b/src/app/tests/suites/certification/Test_TC_MC_1_7.yaml index f9cac4bc8d2fc3..607f9da4dcb4c1 100644 --- a/src/app/tests/suites/certification/Test_TC_MC_1_7.yaml +++ b/src/app/tests/suites/certification/Test_TC_MC_1_7.yaml @@ -43,9 +43,10 @@ tests: command: "readAttribute" attribute: "FeatureMap" response: - value: 1 constraints: type: map32 + minValue: 0 + maxValue: 3 - label: "Read the global attribute: AttributeList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_MC_1_8.yaml b/src/app/tests/suites/certification/Test_TC_MC_1_8.yaml index 89762206f52889..cad2fb133d9a85 100644 --- a/src/app/tests/suites/certification/Test_TC_MC_1_8.yaml +++ b/src/app/tests/suites/certification/Test_TC_MC_1_8.yaml @@ -49,9 +49,9 @@ tests: command: "readAttribute" attribute: "AttributeList" response: - value: [0, 1, 65528, 65529, 65531, 65532, 65533] constraints: type: list + contains: [0, 1, 65528, 65529, 65531, 65532, 65533] - label: "Read the global attribute: AcceptedCommandList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_MC_5_3.yaml b/src/app/tests/suites/certification/Test_TC_MC_5_3.yaml index df2a1c7c039591..f5fb299a5492a7 100644 --- a/src/app/tests/suites/certification/Test_TC_MC_5_3.yaml +++ b/src/app/tests/suites/certification/Test_TC_MC_5_3.yaml @@ -34,6 +34,28 @@ tests: - name: "nodeId" value: nodeId + - label: + "Reads the Lineup attribute from the DUT and Verify that the response + contains a lineup info object" + PICS: MC_CHANNEL.S.A0001 && PICS_USER_PROMPT + verification: | + ./chip-tool channel read lineup 1 1 + [1653999659095] [94964:7676726] CHIP: [TOO] Endpoint: 1 Cluster: 0x0000_0504 Attribute 0x0000_0001 DataVersion: 3623945891 + [1653999659097] [94964:7676726] CHIP: [TOO] Lineup: { + [1653999659097] [94964:7676726] CHIP: [TOO] OperatorName: Comcast + [1653999659097] [94964:7676726] CHIP: [TOO] LineupName: Comcast King County + [1653999659097] [94964:7676726] CHIP: [TOO] PostalCode: 98052 + [1653999659097] [94964:7676726] CHIP: [TOO] LineupInfoType: 0 + [1653999659097] [94964:7676726] CHIP: [TOO] } + cluster: "LogCommands" + command: "UserPrompt" + arguments: + values: + - name: "message" + value: "Please enter 'y' for success" + - name: "expectedValue" + value: "y" + - label: "Reads the ChannelList attribute from the DUT" PICS: MC_CHANNEL.S.A0000 command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_MF_1_27.yaml b/src/app/tests/suites/certification/Test_TC_MF_1_27.yaml index 035986c5b445cb..9ce258fb7e6c7a 100644 --- a/src/app/tests/suites/certification/Test_TC_MF_1_27.yaml +++ b/src/app/tests/suites/certification/Test_TC_MF_1_27.yaml @@ -13,7 +13,7 @@ # limitations under the License. name: - 22.1.27. [TC-MF-1.27] Open commissioning window - durations min and min-1 + 24.1.27. [TC-MF-1.27] Open commissioning window - durations min and min-1 [BCM] [DUT - Commissionee] config: @@ -23,9 +23,23 @@ config: tests: - label: "Factory Reset the DUT_CE" + PICS: PICS_SDK_CI_ONLY cluster: "SystemCommands" command: "FactoryReset" + - label: "Factory Reset the DUT_CE" + verification: | + Not implemented in YAML + cluster: "LogCommands" + command: "UserPrompt" + PICS: PICS_SKIP_SAMPLE_APP + arguments: + values: + - name: "message" + value: "Please reboot the DUT and enter 'y' after DUT starts" + - name: "expectedValue" + value: "y" + - label: "TH_CR1 starts a commissioning process with DUT_CE" cluster: "DelayCommands" command: "WaitForCommissionee" diff --git a/src/app/tests/suites/certification/Test_TC_MF_1_28.yaml b/src/app/tests/suites/certification/Test_TC_MF_1_28.yaml index 15e8f2869a9b9d..03c88bc5cc933e 100644 --- a/src/app/tests/suites/certification/Test_TC_MF_1_28.yaml +++ b/src/app/tests/suites/certification/Test_TC_MF_1_28.yaml @@ -13,8 +13,8 @@ # limitations under the License. name: - 22.1.30. [TC-MF-1.30] Open commissioning window - normal operation and - closing [ECM] [DUT - Commissionee] + 24.1.28. [TC-MF-1.28] Open commissioning window - durations min and min-1 + [ECM] [DUT - Commissionee] config: nodeId: 0x12344321 @@ -26,6 +26,19 @@ tests: cluster: "SystemCommands" command: "FactoryReset" + - label: "Factory Reset the DUT_CE" + verification: | + Not implemented in YAML + cluster: "LogCommands" + command: "UserPrompt" + PICS: PICS_SKIP_SAMPLE_APP + arguments: + values: + - name: "message" + value: "Please reboot the DUT and enter 'y' after DUT starts" + - name: "expectedValue" + value: "y" + - label: "TH_CR1 starts a commissioning process with DUT_CE" cluster: "DelayCommands" command: "WaitForCommissionee" diff --git a/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml b/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml deleted file mode 100644 index 4a5027eac92fb9..00000000000000 --- a/src/app/tests/suites/certification/Test_TC_OCC_2_2.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# 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: 30.2.2. [TC-OCC-2.2] Primary functionality with server as DUT - -config: - nodeId: 0x12344321 - cluster: "Occupancy Sensing" - endpoint: 1 - -tests: - - label: "Wait for the commissioned device to be retrieved" - cluster: "DelayCommands" - command: "WaitForCommissionee" - arguments: - values: - - name: "nodeId" - value: nodeId - - - label: "Reads Occupancy attribute from DUT" - command: "readAttribute" - attribute: "occupancy" - PICS: A_OCCUPANCY - response: - value: 0 - saveAs: OccupancyValue - - - label: "Operate on DUT to change the occupancy status" - cluster: "LogCommands" - command: "UserPrompt" - PICS: PICS_USER_PROMPT - arguments: - values: - - name: "message" - value: "Please enter 'y' for success" - - name: "expectedValue" - value: "y" - - - label: "Reads back Occupancy attribute from DUT after few seconds" - command: "readAttribute" - attribute: "occupancy" - PICS: A_OCCUPANCY - response: - constraints: - notvalue: OccupancyValue diff --git a/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml b/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml index 0536bbe5365a3a..baa28ef6b658cf 100644 --- a/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_OO_1_1.yaml @@ -49,10 +49,21 @@ tests: command: "readAttribute" attribute: "AttributeList" response: - value: - [0, 16384, 16385, 16386, 16387, 65528, 65529, 65531, 65532, 65533] constraints: type: list + contains: + [ + 0, + 16384, + 16385, + 16386, + 16387, + 65528, + 65529, + 65531, + 65532, + 65533, + ] - label: "Read the global attribute: AcceptedCommandList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml b/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml index 2b77c8cb46b7d4..8fbcb156eb24d1 100644 --- a/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_TSTAT_1_1.yaml @@ -38,14 +38,15 @@ tests: - label: "Read the optional global attribute constraints: FeatureMap" PICS: - PICS_SKIP_SAMPLE_APP && ( TSTAT_HEAT || TSTAT_COOL || TSTAT_OCC || - TSTAT_SCH || TSTAT_SB || TSTAT_AUTO ) + ( TSTAT_HEAT || TSTAT_COOL || TSTAT_OCC || TSTAT_SCH || TSTAT_SB || + TSTAT_AUTO ) command: "readAttribute" attribute: "FeatureMap" response: - value: 1 constraints: type: map32 + minValue: 0 + maxValue: 63 - label: "Read the global attribute: AttributeList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_ULABEL_1_1.yaml b/src/app/tests/suites/certification/Test_TC_ULABEL_1_1.yaml index 5eb44862aa81c4..e78deaba7ee13e 100644 --- a/src/app/tests/suites/certification/Test_TC_ULABEL_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_ULABEL_1_1.yaml @@ -48,9 +48,9 @@ tests: command: "readAttribute" attribute: "AttributeList" response: - value: [0, 65528, 65529, 65531, 65532, 65533] constraints: type: list + contains: [0, 65528, 65529, 65531, 65532, 65533] - label: "Read the global attribute: AcceptedCommandList" command: "readAttribute" diff --git a/src/app/tests/suites/certification/ci-pics-values b/src/app/tests/suites/certification/ci-pics-values index 62fbb5b98be9ec..789ab35bfb40b7 100644 --- a/src/app/tests/suites/certification/ci-pics-values +++ b/src/app/tests/suites/certification/ci-pics-values @@ -277,25 +277,25 @@ MC_APPLAUNCHER.S.A0000=1 MC_APPLAUNCHER.S.A0001=1 MC_MEDIAINPUT.S.A0000=1 MC_MEDIAINPUT.S.A0001=1 -MC_CHANNEL.S.CL=0 +MC_CHANNEL.S.CL=1 MC_CHANNEL.C.C0000=1 MC_CHANNEL.C.C0002=1 MC_CHANNEL.C.C0003=1 -MC_MEDIAPLAYBACK.S.AS=0 -MC_MEDIAPLAYBACK.S.VS=0 +MC_MEDIAPLAYBACK.S.AS=1 +MC_MEDIAPLAYBACK.S.VS=1 NAMEUPDATES=0 MC_TGTNAV.S.A0001=1 MC_APBSC.S.A0000=1 MC_APBSC.S.A0001=1 MC_APBSC.S.A0003=1 -MC_CONTENTLAUNCHER.S.CS=0 -MC_CONTENTLAUNCHER.S.UP=0 +MC_CONTENTLAUNCHER.S.CS=1 +MC_CONTENTLAUNCHER.S.UP=1 MC_CONTENTLAUNCHER.S.A0000=1 MC_CONTENTLAUNCHER.S.A0001=1 MC_APPLAUNCHER.S.AP=0 -MC_KEYPADINPUT.S.LK=0 -MC_KEYPADINPUT.S.NK=0 -MC_KEYPADINPUT.S.NV=0 +MC_KEYPADINPUT.S.LK=1 +MC_KEYPADINPUT.S.NK=1 +MC_KEYPADINPUT.S.NV=1 MC_MEDIAINPUT.S.NU=0 MC_LOWPOWER.S=1 @@ -320,7 +320,7 @@ MC_APPLAUNCHER.S.C0002=1 MC_APPLAUNCHER.C.C0001=1 MC_WAKEONLAN.S.A0000=1 -MC_CHANNEL.S.LI=0 +MC_CHANNEL.S.LI=1 MC_CHANNEL.S.A0000=1 MC_CHANNEL.S.A0001=1 MC_CHANNEL.S.A0002=1 diff --git a/src/app/tests/suites/tests.js b/src/app/tests/suites/tests.js index 1445964cde50a4..e8a0efade92b56 100644 --- a/src/app/tests/suites/tests.js +++ b/src/app/tests/suites/tests.js @@ -29,866 +29,752 @@ function disable(testName) // clang-format off function getManualTests() { - const DeviceDiscovery = [ - 'Test_TC_DD_1_5', - 'Test_TC_DD_1_6', - 'Test_TC_DD_1_7', - 'Test_TC_DD_1_8', - 'Test_TC_DD_1_9', - 'Test_TC_DD_1_10', - 'Test_TC_DD_1_11', - 'Test_TC_DD_1_12', - 'Test_TC_DD_1_13', - 'Test_TC_DD_1_14', - 'Test_TC_DD_1_15', - 'Test_TC_DD_2_1', - 'Test_TC_DD_2_2', - 'Test_TC_DD_3_1', - 'Test_TC_DD_3_2', - 'Test_TC_DD_3_3', - 'Test_TC_DD_3_4', - 'Test_TC_DD_3_5', - 'Test_TC_DD_3_6', - 'Test_TC_DD_3_7', - 'Test_TC_DD_3_8', - 'Test_TC_DD_3_9', - 'Test_TC_DD_3_10', - 'Test_TC_DD_3_11', - 'Test_TC_DD_3_12', - 'Test_TC_DD_3_13', - 'Test_TC_DD_3_14', - 'Test_TC_DD_3_15', - 'Test_TC_DD_3_16', - 'Test_TC_DD_3_17', - 'Test_TC_DD_3_18', - 'Test_TC_DD_3_19', - 'Test_TC_DD_3_20', - ]; - - const Groups = [ - 'TestGroupDemoCommand', - 'TestGroupDemoConfig', - 'Test_TC_G_1_1', - 'Test_TC_G_2_1', - 'Test_TC_G_2_2', - 'Test_TC_G_2_3', - 'Test_TC_G_3_1', - 'Test_TC_G_3_2', - ]; - - const BulkDataExchangeProtocol = [ - 'Test_TC_BDX_1_1', - 'Test_TC_BDX_1_2', - 'Test_TC_BDX_1_3', - 'Test_TC_BDX_1_4', - 'Test_TC_BDX_1_5', - 'Test_TC_BDX_1_6', - 'Test_TC_BDX_2_1', - 'Test_TC_BDX_2_2', - 'Test_TC_BDX_2_3', - 'Test_TC_BDX_2_4', - 'Test_TC_BDX_2_5', - ]; - - const bridge = [ - 'Test_TC_BR_1', - 'Test_TC_BR_2', - 'Test_TC_BR_3', - ]; - - const DeviceAttestation = [ - 'Test_TC_DA_1_1', - 'Test_TC_DA_1_2', - 'Test_TC_DA_1_3', - 'Test_TC_DA_1_4', - 'Test_TC_DA_1_5', - 'Test_TC_DA_1_6', - ]; - - const DeviceManagement = [ - 'Test_TC_BINFO_1_1', - 'Test_TC_OPCREDS_1_2', - 'Test_TC_CNET_1_3', - 'Test_TC_BINFO_2_2', - 'Test_TC_BINFO_2_4', - 'Test_TC_OPCREDS_3_1', - 'Test_TC_OPCREDS_3_2', - 'Test_TC_OPCREDS_3_3', - 'Test_TC_OPCREDS_3_4', - 'Test_TC_CNET_4_1', - 'Test_TC_CNET_4_2', - 'Test_TC_CNET_4_3', - 'Test_TC_CNET_4_4', - 'Test_TC_CNET_4_5', - 'Test_TC_CNET_4_6', - 'Test_TC_CNET_4_7', - 'Test_TC_CNET_4_8', - 'Test_TC_CNET_4_9', - 'Test_TC_CNET_4_10', - 'Test_TC_CNET_4_11', - 'Test_TC_CNET_4_12', - 'Test_TC_CNET_4_13', - 'Test_TC_CNET_4_14', - 'Test_TC_CNET_4_15', - 'Test_TC_CNET_4_16', - 'Test_TC_CNET_4_17', - 'Test_TC_CNET_4_18', - 'Test_TC_CNET_4_19', - 'Test_TC_CNET_4_20', - 'Test_TC_CNET_4_21', - ]; - - const DiagnosticsLogs = [ - 'Test_TC_DLOG_1_1', - 'Test_TC_DLOG_2_1', - 'Test_TC_DLOG_2_2', - 'Test_TC_DLOG_3_1', - ]; - - const Descriptor = [ - 'Test_TC_DESC_2_1', - 'Test_TC_DESC_2_2', - ]; - - const EthernetNetworkDiagnostics = [ - 'Test_TC_DGETH_1_1', - 'Test_TC_DGETH_3_1', - 'Test_TC_DGETH_3_2', - ]; - - const GeneralCommissioning = [ - 'Test_TC_CGEN_2_2', - 'Test_TC_CGEN_2_3', - 'Test_TC_CGEN_2_4', - ]; - - const GeneralDiagnostics = [ - 'Test_TC_DGGEN_2_2', - 'Test_TC_DGGEN_2_3', - 'Test_TC_DGGEN_3_1', - 'Test_TC_DGGEN_3_2', - ]; - - const Identify = [ - 'Test_TC_I_3_1', - 'Test_TC_I_3_2', - ]; - - const IlluminanceMeasurement = [ - 'Test_TC_ILL_2_2', - 'Test_TC_ILL_3_1', - ]; - - const InteractionDataModel = [ - 'Test_TC_IDM_1_1', - 'Test_TC_IDM_1_2', - 'Test_TC_IDM_2_1', - 'Test_TC_IDM_2_2', - 'Test_TC_IDM_3_1', - 'Test_TC_IDM_3_2', - 'Test_TC_IDM_4_1', - 'Test_TC_IDM_4_2', - 'Test_TC_IDM_4_3', - 'Test_TC_IDM_5_1', - 'Test_TC_IDM_5_2', - 'Test_TC_IDM_6_1', - 'Test_TC_IDM_6_2', - 'Test_TC_IDM_6_3', - 'Test_TC_IDM_6_4', - 'Test_TC_IDM_7_1', - 'Test_TC_IDM_8_1', - ]; - - const MediaControl = [ - 'Test_TC_MC_2_2', - 'Test_TC_MC_3_7_1', - 'Test_TC_MC_3_8_1', - 'Test_TC_MC_3_9_1', - 'Test_TC_MC_3_14', - 'Test_TC_MC_3_15', - 'Test_TC_MC_3_16', - 'Test_TC_MC_3_17', - 'Test_TC_MC_4_1', - 'Test_TC_MC_5_4', - 'Test_TC_MC_5_5', - 'Test_TC_MC_5_6', - 'Test_TC_MC_6_5', - 'Test_TC_MC_6_7', - 'Test_TC_MC_7_3', - 'Test_TC_MC_7_4', - 'Test_TC_MC_10_3', - 'Test_TC_MC_10_5', - 'Test_TC_MC_10_7', - 'Test_TC_MC_11_1', - 'Test_TC_MC_11_2', - 'Test_TC_MC_12_1', - 'Test_TC_MC_12_2', - ]; - - const MultipleFabrics = [ - 'Test_TC_MF_1_1', - 'Test_TC_MF_1_2', - 'Test_TC_MF_1_7', - 'Test_TC_MF_1_8', - 'Test_TC_MF_1_11', - 'Test_TC_MF_1_12', - 'Test_TC_MF_1_13', - 'Test_TC_MF_1_14', - 'Test_TC_MF_1_16', - 'Test_TC_MF_1_17', - 'Test_TC_MF_1_18', - 'Test_TC_MF_1_19', - 'Test_TC_MF_1_20', - 'Test_TC_MF_1_21', - 'Test_TC_MF_1_22', - 'Test_TC_MF_1_23', - 'Test_TC_MF_1_24', - 'Test_TC_MF_1_25', - 'Test_TC_MF_1_26', - 'Test_TC_MF_1_27', - 'Test_TC_MF_1_28', - // Slow tests that should not run in CI because they take many minutes each - 'Test_TC_MF_1_5', - 'Test_TC_MF_1_6', - 'Test_TC_MF_1_9', - 'Test_TC_MF_1_10', - 'Test_TC_MF_1_15', - ]; - - const ModeSelect = [ - 'Test_TC_MOD_1_2', - 'Test_TC_MOD_1_3', - 'Test_TC_MOD_2_1', - 'Test_TC_MOD_2_2', - 'Test_TC_MOD_3_1', - 'Test_TC_MOD_3_2', - 'Test_TC_MOD_3_3', - 'Test_TC_MOD_3_4', - ]; - - const OTASoftwareUpdate = [ - 'Test_TC_SU_1_1', - 'Test_TC_SU_2_1', - 'Test_TC_SU_2_2', - 'Test_TC_SU_2_3', - 'Test_TC_SU_2_4', - 'Test_TC_SU_2_5', - 'Test_TC_SU_2_6', - 'Test_TC_SU_2_7', - 'Test_TC_SU_2_8', - 'Test_TC_SU_3_1', - 'Test_TC_SU_3_2', - 'Test_TC_SU_3_3', - 'Test_TC_SU_3_4', - 'Test_TC_SU_4_1', - 'Test_TC_SU_4_2', - ]; - - const PowerSourceConfiguration = [ - 'Test_TC_PSCFG_2_1', - 'Test_TC_PSCFG_2_2', - 'Test_TC_PSCFG_3_1', - ]; - - const SecureChannel = [ - 'Test_TC_SC_1_1', - 'Test_TC_SC_1_2', - 'Test_TC_SC_1_3', - 'Test_TC_SC_1_4', - 'Test_TC_SC_2_1', - 'Test_TC_SC_2_2', - 'Test_TC_SC_2_3', - 'Test_TC_SC_2_4', - 'Test_TC_SC_3_1', - 'Test_TC_SC_3_2', - 'Test_TC_SC_3_3', - 'Test_TC_SC_3_4', - 'Test_TC_SC_4_1', - 'Test_TC_SC_4_3', - 'Test_TC_SC_4_4', - 'Test_TC_SC_4_5', - 'Test_TC_SC_4_6', - 'Test_TC_SC_4_7', - 'Test_TC_SC_4_8', - 'Test_TC_SC_4_9', - 'Test_TC_SC_4_10', - ]; - - const SoftwareDiagnostics = [ - 'Test_TC_DGSW_1_1', - 'Test_TC_DGSW_3_1', - 'Test_TC_DGSW_3_2', - ]; - - const WiFiNetworkDiagnostics = [ - 'Test_TC_DGWIFI_1_1', - 'Test_TC_DGWIFI_2_2', - 'Test_TC_DGWIFI_3_1', - 'Test_TC_DGWIFI_3_2', - ]; - - const WindowCovering = [ - 'Test_TC_WNCV_6_1', - 'Test_TC_WNCV_7_1', - ]; - - const FlowMeasurement = [ - 'Test_TC_FLW_2_2', - 'Test_TC_FLW_3_1', - ]; - - const OccupancySensing = [ - 'Test_TC_OCC_2_2', - 'Test_TC_OCC_2_3', - 'Test_TC_OCC_2_4', - 'Test_TC_OCC_3_1', - 'Test_TC_OCC_3_2', - ]; - - const PressureMeasurement = [ - 'Test_TC_PRS_2_2', - 'Test_TC_PRS_3_1', - ]; - - const PowerSource = [ - 'Test_TC_PS_2_2', - 'Test_TC_PS_3_1', - ]; - - const BooleanState = [ - 'Test_TC_BOOL_2_2', - 'Test_TC_BOOL_3_1', - ]; - - const ColorControl = [ - 'Test_TC_CC_2_2', - 'Test_TC_CC_3_4', - 'Test_TC_CC_4_5', - 'Test_TC_CC_5_4', - 'Test_TC_CC_6_4', - 'Test_TC_CC_7_5', - 'Test_TC_CC_9_4', - // Slow tests that should not run in CI because they take many minutes each - 'Test_TC_CC_9_1', - 'Test_TC_CC_9_2', - 'Test_TC_CC_9_3', - ]; - - const DoorLock = [ - 'Test_TC_DLRK_1_1', - 'Test_TC_DLRK_2_1', - 'Test_TC_DLRK_2_6', - 'Test_TC_DLRK_2_8', - 'Test_TC_DLRK_2_10', - ]; - - const LocalizationConfiguration = [ - 'Test_TC_LCFG_1_1', - 'Test_TC_LCFG_2_1', - 'Test_TC_LCFG_3_1', - ]; - - const LevelControl = [ - 'Test_TC_LVL_2_3', - 'Test_TC_LVL_8_1', - ]; - - const OnOff = [ - 'Test_TC_OO_2_3', - 'Test_TC_OO_3_1', - 'Test_TC_OO_3_2', - ]; - - const RelativeHumidityMeasurement = [ - 'Test_TC_RH_2_2', - 'Test_TC_RH_3_1', - ]; - - const Switch = [ - 'Test_TC_SWTCH_1_1', - 'Test_TC_SWTCH_2_2', - 'Test_TC_SWTCH_3_1', - 'Test_TC_SWTCH_3_2', - ]; - - const TemperatureMeasurement = [ - 'Test_TC_TM_2_2', - 'Test_TC_TM_3_1', - ]; - - const Thermostat = [ - 'Test_TC_TSTAT_3_1', - 'Test_TC_TSTAT_3_2', - ]; - - const ThermostatUserConfiguration = [ - 'Test_TC_TSUIC_3_1', - ]; - - const ThreadNetworkDiagnostics = [ - 'Test_TC_DIAG_TH_NW_1_1', - 'Test_TC_DIAG_TH_NW_2_5', - 'Test_TC_DIAG_TH_NW_3_1', - 'Test_TC_DIAG_TH_NW_3_2', - 'Test_TC_DIAG_TH_NW_3_3', - 'Test_TC_DIAG_TH_NW_3_4', - 'Test_TC_DIAG_TH_NW_3_5', - ]; - - const Actions = [ - 'Test_TC_ACT_2_1', - 'Test_TC_ACT_2_2', - 'Test_TC_ACT_3_1', - ]; - - const TimeFormatLocalization = [ - 'Test_TC_TFL_1_1', - 'Test_TC_TFL_1_2', - 'Test_TC_TFL_2_1', - 'Test_TC_TFL_3_1', - ]; - - const UnitLocalization = [ - 'Test_TC_UL_1_1', - 'Test_TC_UL_1_2', - 'Test_TC_UL_2_1', - 'Test_TC_UL_3_1', - ]; - - const FixedLabel = [ - 'Test_TC_FLABEL_1_1', - 'Test_TC_FLABEL_2_1', - 'Test_TC_FLABEL_2_2', - ]; - - const Binding = [ - 'Test_TC_BIND_1_1', - 'Test_TC_BIND_2_1', - ]; - - const Scenes = [ - 'Test_TC_S_1_1', - 'Test_TC_S_2_1', - 'Test_TC_S_2_2', - 'Test_TC_S_2_3', - 'Test_TC_S_3_1', - ]; - - const PumpConfigurationControl = [ - 'Test_TC_PCC_3_1', - ]; - - const tests = [ - DeviceDiscovery, - Groups, - BulkDataExchangeProtocol, - bridge, - DeviceAttestation, - DeviceManagement, - DiagnosticsLogs, - Descriptor, - EthernetNetworkDiagnostics, - GeneralCommissioning, - GeneralDiagnostics, - Identify, - IlluminanceMeasurement, - InteractionDataModel, - MediaControl, - MultipleFabrics, - ModeSelect, - OTASoftwareUpdate, - PowerSourceConfiguration, - SecureChannel, - SoftwareDiagnostics, - WiFiNetworkDiagnostics, - WindowCovering, - FlowMeasurement, - OccupancySensing, - PressureMeasurement, - PowerSource, - BooleanState, - ColorControl, - DoorLock, - LocalizationConfiguration, - LevelControl, - OnOff, - RelativeHumidityMeasurement, - Switch, - TemperatureMeasurement, - Thermostat, - ThermostatUserConfiguration, - ThreadNetworkDiagnostics, - Actions, - TimeFormatLocalization, - UnitLocalization, - FixedLabel, - Binding, - Scenes, - PumpConfigurationControl, - ].flat(1); - - tests.disable = disable.bind(tests); - return tests; + const DeviceDiscovery = [ + "Test_TC_DD_1_5", + "Test_TC_DD_1_6", + "Test_TC_DD_1_7", + "Test_TC_DD_1_8", + "Test_TC_DD_1_9", + "Test_TC_DD_1_10", + "Test_TC_DD_1_11", + "Test_TC_DD_1_12", + "Test_TC_DD_1_13", + "Test_TC_DD_1_14", + "Test_TC_DD_1_15", + "Test_TC_DD_2_1", + "Test_TC_DD_2_2", + "Test_TC_DD_3_1", + "Test_TC_DD_3_2", + "Test_TC_DD_3_3", + "Test_TC_DD_3_4", + "Test_TC_DD_3_5", + "Test_TC_DD_3_6", + "Test_TC_DD_3_7", + "Test_TC_DD_3_8", + "Test_TC_DD_3_9", + "Test_TC_DD_3_10", + "Test_TC_DD_3_11", + "Test_TC_DD_3_12", + "Test_TC_DD_3_13", + "Test_TC_DD_3_14", + "Test_TC_DD_3_15", + "Test_TC_DD_3_16", + "Test_TC_DD_3_17", + "Test_TC_DD_3_18", + "Test_TC_DD_3_19", + "Test_TC_DD_3_20", + ]; + + const Groups = [ + "TestGroupDemoCommand", + "TestGroupDemoConfig", + "Test_TC_G_1_1", + "Test_TC_G_2_1", + "Test_TC_G_2_2", + "Test_TC_G_2_3", + "Test_TC_G_3_1", + "Test_TC_G_3_2", + ]; + + const BulkDataExchangeProtocol = [ + "Test_TC_BDX_1_1", + "Test_TC_BDX_1_2", + "Test_TC_BDX_1_3", + "Test_TC_BDX_1_4", + "Test_TC_BDX_1_5", + "Test_TC_BDX_1_6", + "Test_TC_BDX_2_1", + "Test_TC_BDX_2_2", + "Test_TC_BDX_2_3", + "Test_TC_BDX_2_4", + "Test_TC_BDX_2_5", + ]; + + const bridge = ["Test_TC_BR_1", "Test_TC_BR_2", "Test_TC_BR_3"]; + + const DeviceAttestation = [ + "Test_TC_DA_1_1", + "Test_TC_DA_1_2", + "Test_TC_DA_1_3", + "Test_TC_DA_1_4", + "Test_TC_DA_1_5", + "Test_TC_DA_1_6", + ]; + + const DeviceManagement = [ + "Test_TC_BINFO_1_1", + "Test_TC_OPCREDS_1_2", + "Test_TC_CNET_1_3", + "Test_TC_BINFO_2_2", + "Test_TC_BINFO_2_4", + "Test_TC_OPCREDS_3_1", + "Test_TC_OPCREDS_3_2", + "Test_TC_OPCREDS_3_3", + "Test_TC_OPCREDS_3_4", + "Test_TC_CNET_4_1", + "Test_TC_CNET_4_2", + "Test_TC_CNET_4_3", + "Test_TC_CNET_4_4", + "Test_TC_CNET_4_5", + "Test_TC_CNET_4_6", + "Test_TC_CNET_4_7", + "Test_TC_CNET_4_8", + "Test_TC_CNET_4_9", + "Test_TC_CNET_4_10", + "Test_TC_CNET_4_11", + "Test_TC_CNET_4_12", + "Test_TC_CNET_4_13", + "Test_TC_CNET_4_14", + "Test_TC_CNET_4_15", + "Test_TC_CNET_4_16", + "Test_TC_CNET_4_17", + "Test_TC_CNET_4_18", + "Test_TC_CNET_4_19", + "Test_TC_CNET_4_20", + "Test_TC_CNET_4_21", + ]; + + const DiagnosticsLogs = [ + "Test_TC_DLOG_1_1", + "Test_TC_DLOG_2_1", + "Test_TC_DLOG_2_2", + "Test_TC_DLOG_3_1", + ]; + + const Descriptor = ["Test_TC_DESC_2_1", "Test_TC_DESC_2_2"]; + + const EthernetNetworkDiagnostics = [ + "Test_TC_DGETH_1_1", + "Test_TC_DGETH_3_1", + "Test_TC_DGETH_3_2", + ]; + + const GeneralCommissioning = [ + "Test_TC_CGEN_2_2", + "Test_TC_CGEN_2_3", + "Test_TC_CGEN_2_4", + ]; + + const GeneralDiagnostics = [ + "Test_TC_DGGEN_2_2", + "Test_TC_DGGEN_2_3", + "Test_TC_DGGEN_3_1", + "Test_TC_DGGEN_3_2", + ]; + + const Identify = ["Test_TC_I_3_1", "Test_TC_I_3_2"]; + + const IlluminanceMeasurement = ["Test_TC_ILL_2_2", "Test_TC_ILL_3_1"]; + + const InteractionDataModel = [ + "Test_TC_IDM_1_1", + "Test_TC_IDM_1_2", + "Test_TC_IDM_2_1", + "Test_TC_IDM_2_2", + "Test_TC_IDM_3_1", + "Test_TC_IDM_3_2", + "Test_TC_IDM_4_1", + "Test_TC_IDM_4_2", + "Test_TC_IDM_4_3", + "Test_TC_IDM_5_1", + "Test_TC_IDM_5_2", + "Test_TC_IDM_6_1", + "Test_TC_IDM_6_2", + "Test_TC_IDM_6_3", + "Test_TC_IDM_6_4", + "Test_TC_IDM_7_1", + "Test_TC_IDM_8_1", + ]; + + const MediaControl = [ + "Test_TC_MC_2_2", + "Test_TC_MC_3_7_1", + "Test_TC_MC_3_8_1", + "Test_TC_MC_3_9_1", + "Test_TC_MC_3_14", + "Test_TC_MC_3_15", + "Test_TC_MC_3_16", + "Test_TC_MC_3_17", + "Test_TC_MC_4_1", + "Test_TC_MC_5_4", + "Test_TC_MC_5_5", + "Test_TC_MC_5_6", + "Test_TC_MC_6_5", + "Test_TC_MC_6_7", + "Test_TC_MC_7_3", + "Test_TC_MC_7_4", + "Test_TC_MC_10_3", + "Test_TC_MC_10_5", + "Test_TC_MC_10_7", + "Test_TC_MC_11_1", + "Test_TC_MC_11_2", + "Test_TC_MC_12_1", + "Test_TC_MC_12_2", + ]; + + const MultipleFabrics = [ + "Test_TC_MF_1_1", + "Test_TC_MF_1_2", + "Test_TC_MF_1_7", + "Test_TC_MF_1_8", + "Test_TC_MF_1_11", + "Test_TC_MF_1_12", + "Test_TC_MF_1_13", + "Test_TC_MF_1_14", + "Test_TC_MF_1_16", + "Test_TC_MF_1_17", + "Test_TC_MF_1_18", + "Test_TC_MF_1_19", + "Test_TC_MF_1_20", + "Test_TC_MF_1_21", + "Test_TC_MF_1_22", + "Test_TC_MF_1_23", + "Test_TC_MF_1_24", + "Test_TC_MF_1_25", + "Test_TC_MF_1_26", + "Test_TC_MF_1_27", + "Test_TC_MF_1_28", + // Slow tests that should not run in CI because they take many minutes each + "Test_TC_MF_1_5", + "Test_TC_MF_1_6", + "Test_TC_MF_1_9", + "Test_TC_MF_1_10", + "Test_TC_MF_1_15", + ]; + + const ModeSelect = [ + "Test_TC_MOD_1_2", + "Test_TC_MOD_1_3", + "Test_TC_MOD_2_1", + "Test_TC_MOD_2_2", + "Test_TC_MOD_3_1", + "Test_TC_MOD_3_2", + "Test_TC_MOD_3_3", + "Test_TC_MOD_3_4", + ]; + + const OTASoftwareUpdate = [ + "Test_TC_SU_1_1", + "Test_TC_SU_2_1", + "Test_TC_SU_2_2", + "Test_TC_SU_2_3", + "Test_TC_SU_2_4", + "Test_TC_SU_2_5", + "Test_TC_SU_2_6", + "Test_TC_SU_2_7", + "Test_TC_SU_2_8", + "Test_TC_SU_3_1", + "Test_TC_SU_3_2", + "Test_TC_SU_3_3", + "Test_TC_SU_3_4", + "Test_TC_SU_4_1", + "Test_TC_SU_4_2", + ]; + + const PowerSourceConfiguration = [ + "Test_TC_PSCFG_2_1", + "Test_TC_PSCFG_2_2", + "Test_TC_PSCFG_3_1", + ]; + + const SecureChannel = [ + "Test_TC_SC_1_1", + "Test_TC_SC_1_2", + "Test_TC_SC_1_3", + "Test_TC_SC_1_4", + "Test_TC_SC_2_1", + "Test_TC_SC_2_2", + "Test_TC_SC_2_3", + "Test_TC_SC_2_4", + "Test_TC_SC_3_1", + "Test_TC_SC_3_2", + "Test_TC_SC_3_3", + "Test_TC_SC_3_4", + "Test_TC_SC_4_1", + "Test_TC_SC_4_3", + "Test_TC_SC_4_4", + "Test_TC_SC_4_5", + "Test_TC_SC_4_6", + "Test_TC_SC_4_7", + "Test_TC_SC_4_8", + "Test_TC_SC_4_9", + "Test_TC_SC_4_10", + ]; + + const SoftwareDiagnostics = [ + "Test_TC_DGSW_1_1", + "Test_TC_DGSW_3_1", + "Test_TC_DGSW_3_2", + ]; + + const WiFiNetworkDiagnostics = [ + "Test_TC_DGWIFI_1_1", + "Test_TC_DGWIFI_2_2", + "Test_TC_DGWIFI_3_1", + "Test_TC_DGWIFI_3_2", + ]; + + const WindowCovering = ["Test_TC_WNCV_6_1", "Test_TC_WNCV_7_1"]; + + const FlowMeasurement = ["Test_TC_FLW_2_2", "Test_TC_FLW_3_1"]; + + const OccupancySensing = [ + "Test_TC_OCC_2_3", + "Test_TC_OCC_2_4", + "Test_TC_OCC_3_1", + "Test_TC_OCC_3_2", + ]; + + const PressureMeasurement = ["Test_TC_PRS_2_2", "Test_TC_PRS_3_1"]; + + const PowerSource = ["Test_TC_PS_2_2", "Test_TC_PS_3_1"]; + + const BooleanState = ["Test_TC_BOOL_2_2", "Test_TC_BOOL_3_1"]; + + const ColorControl = [ + "Test_TC_CC_2_2", + "Test_TC_CC_3_4", + "Test_TC_CC_4_5", + "Test_TC_CC_5_4", + "Test_TC_CC_6_4", + "Test_TC_CC_7_5", + "Test_TC_CC_9_4", + // Slow tests that should not run in CI because they take many minutes each + "Test_TC_CC_9_1", + "Test_TC_CC_9_2", + "Test_TC_CC_9_3", + ]; + + const DoorLock = [ + "Test_TC_DLRK_1_1", + "Test_TC_DLRK_2_1", + "Test_TC_DLRK_2_6", + "Test_TC_DLRK_2_8", + "Test_TC_DLRK_2_10", + ]; + + const LocalizationConfiguration = [ + "Test_TC_LCFG_1_1", + "Test_TC_LCFG_2_1", + "Test_TC_LCFG_3_1", + ]; + + const LevelControl = ["Test_TC_LVL_2_3", "Test_TC_LVL_8_1"]; + + const OnOff = ["Test_TC_OO_2_3", "Test_TC_OO_3_1", "Test_TC_OO_3_2"]; + + const RelativeHumidityMeasurement = ["Test_TC_RH_2_2", "Test_TC_RH_3_1"]; + + const Switch = [ + "Test_TC_SWTCH_1_1", + "Test_TC_SWTCH_2_2", + "Test_TC_SWTCH_3_1", + "Test_TC_SWTCH_3_2", + ]; + + const TemperatureMeasurement = ["Test_TC_TM_2_2", "Test_TC_TM_3_1"]; + + const Thermostat = ["Test_TC_TSTAT_3_1", "Test_TC_TSTAT_3_2"]; + + const ThermostatUserConfiguration = ["Test_TC_TSUIC_3_1"]; + + const ThreadNetworkDiagnostics = [ + "Test_TC_DIAG_TH_NW_1_1", + "Test_TC_DIAG_TH_NW_2_5", + "Test_TC_DIAG_TH_NW_3_1", + "Test_TC_DIAG_TH_NW_3_2", + "Test_TC_DIAG_TH_NW_3_3", + "Test_TC_DIAG_TH_NW_3_4", + "Test_TC_DIAG_TH_NW_3_5", + ]; + + const Actions = ["Test_TC_ACT_2_1", "Test_TC_ACT_2_2", "Test_TC_ACT_3_1"]; + + const TimeFormatLocalization = [ + "Test_TC_TFL_1_1", + "Test_TC_TFL_1_2", + "Test_TC_TFL_2_1", + "Test_TC_TFL_3_1", + ]; + + const UnitLocalization = [ + "Test_TC_UL_1_1", + "Test_TC_UL_1_2", + "Test_TC_UL_2_1", + "Test_TC_UL_3_1", + ]; + + const FixedLabel = [ + "Test_TC_FLABEL_1_1", + "Test_TC_FLABEL_2_1", + "Test_TC_FLABEL_2_2", + ]; + + const Binding = ["Test_TC_BIND_1_1", "Test_TC_BIND_2_1"]; + + const Scenes = [ + "Test_TC_S_1_1", + "Test_TC_S_2_1", + "Test_TC_S_2_2", + "Test_TC_S_2_3", + "Test_TC_S_3_1", + ]; + + const PumpConfigurationControl = ["Test_TC_PCC_3_1"]; + + const tests = [ + DeviceDiscovery, + Groups, + BulkDataExchangeProtocol, + bridge, + DeviceAttestation, + DeviceManagement, + DiagnosticsLogs, + Descriptor, + EthernetNetworkDiagnostics, + GeneralCommissioning, + GeneralDiagnostics, + Identify, + IlluminanceMeasurement, + InteractionDataModel, + MediaControl, + MultipleFabrics, + ModeSelect, + OTASoftwareUpdate, + PowerSourceConfiguration, + SecureChannel, + SoftwareDiagnostics, + WiFiNetworkDiagnostics, + WindowCovering, + FlowMeasurement, + OccupancySensing, + PressureMeasurement, + PowerSource, + BooleanState, + ColorControl, + DoorLock, + LocalizationConfiguration, + LevelControl, + OnOff, + RelativeHumidityMeasurement, + Switch, + TemperatureMeasurement, + Thermostat, + ThermostatUserConfiguration, + ThreadNetworkDiagnostics, + Actions, + TimeFormatLocalization, + UnitLocalization, + FixedLabel, + Binding, + Scenes, + PumpConfigurationControl, + ].flat(1); + + tests.disable = disable.bind(tests); + return tests; } function getTests() { - const AccessControl = [ - 'TestAccessControlCluster', - ]; - - const BooleanState = [ - 'Test_TC_BOOL_1_1', - 'Test_TC_BOOL_2_1', - ]; - - const Actions = [ - 'Test_TC_ACT_1_1', - ]; - - const ColorControl = [ - 'Test_TC_CC_1_1', - 'Test_TC_CC_2_1', - 'Test_TC_CC_3_1', - 'Test_TC_CC_3_2', - 'Test_TC_CC_3_3', - 'Test_TC_CC_4_1', - 'Test_TC_CC_4_2', - 'Test_TC_CC_4_3', - 'Test_TC_CC_4_4', - 'Test_TC_CC_5_1', - 'Test_TC_CC_5_2', - 'Test_TC_CC_5_3', - 'Test_TC_CC_6_1', - 'Test_TC_CC_6_2', - 'Test_TC_CC_6_3', - 'Test_TC_CC_7_1', - 'Test_TC_CC_7_2', - 'Test_TC_CC_7_3', - 'Test_TC_CC_7_4', - 'Test_TC_CC_8_1', - ]; - - const DeviceManagement = [ - 'Test_TC_BINFO_2_1', - ]; - - const Descriptor = [ - 'Test_TC_DESC_1_1', - ]; - - const EthernetNetworkDiagnostics = [ - 'Test_TC_DGETH_2_1', - 'Test_TC_DGETH_2_2', - ]; - - const FlowMeasurement = [ - 'Test_TC_FLW_1_1', - 'Test_TC_FLW_2_1', - ]; - - const GeneralCommissioning = [ - 'Test_TC_CGEN_1_1', - 'Test_TC_CGEN_2_1', - ]; - - const GeneralDiagnostics = [ - 'Test_TC_DGGEN_1_1', - 'Test_TC_DGGEN_2_1', - ]; - - const Identify = [ - 'Test_TC_I_1_1', - 'Test_TC_I_2_1', - 'Test_TC_I_2_2', - 'Test_TC_I_2_3', - ]; - - const IlluminanceMeasurement = [ - 'Test_TC_ILL_1_1', - 'Test_TC_ILL_2_1', - ]; - - const OccupancySensing = [ - 'Test_TC_OCC_1_1', - 'Test_TC_OCC_2_1', - ]; - - const LevelControl = [ - 'Test_TC_LVL_1_1', - 'Test_TC_LVL_2_1', - 'Test_TC_LVL_2_2', - 'Test_TC_LVL_3_1', - 'Test_TC_LVL_4_1', - 'Test_TC_LVL_5_1', - 'Test_TC_LVL_6_1', - ]; - - const UserLabel = [ - 'Test_TC_ULABEL_1_1', - 'Test_TC_ULABEL_2_2', - 'Test_TC_ULABEL_2_3', - 'Test_TC_ULABEL_2_4', - 'Test_TC_ULABEL_2_5', - ]; - - const MediaControl = [ - 'Test_TC_MC_1_1', - 'Test_TC_MC_1_2', - 'Test_TC_MC_1_3', - 'Test_TC_MC_1_4', - 'Test_TC_MC_1_5', - 'Test_TC_MC_1_6', - 'Test_TC_MC_1_7', - 'Test_TC_MC_1_8', - 'Test_TC_MC_1_9', - 'Test_TC_MC_1_10', - 'Test_TC_MC_1_11', - 'Test_TC_MC_1_12', - 'Test_TC_MC_2_1', - 'Test_TC_MC_3_2', - 'Test_TC_MC_3_3', - 'Test_TC_MC_3_5', - 'Test_TC_MC_3_6', - 'Test_TC_MC_3_7', - 'Test_TC_MC_3_8', - 'Test_TC_MC_3_9', - 'Test_TC_MC_3_10', - 'Test_TC_MC_3_11', - 'Test_TC_MC_3_12', - 'Test_TC_MC_3_13', - 'Test_TC_MC_5_1', - 'Test_TC_MC_5_2', - 'Test_TC_MC_5_3', - 'Test_TC_MC_6_1', - 'Test_TC_MC_6_2', - 'Test_TC_MC_6_3', - 'Test_TC_MC_6_4', - 'Test_TC_MC_7_1', - 'Test_TC_MC_7_2', - 'Test_TC_MC_8_1', - 'Test_TC_MC_9_1', - 'Test_TC_MC_10_1', - ]; - - const ModeSelect = [ - 'Test_TC_MOD_1_1', - ]; - - const MultipleFabrics = [ - 'Test_TC_MF_1_3', - 'Test_TC_MF_1_4', - ]; - - const OTASoftwareUpdate = [ - 'OTA_SuccessfulTransfer', - ]; - - const OnOff = [ - 'Test_TC_OO_1_1', - 'Test_TC_OO_2_1', - 'Test_TC_OO_2_2', - 'Test_TC_OO_2_4', - ]; - - const PowerSource = [ - 'Test_TC_PS_1_1', - 'Test_TC_PS_2_1', - ]; - - const PressureMeasurement = [ - 'Test_TC_PRS_1_1', - 'Test_TC_PRS_2_1', - ]; - - const PumpConfigurationControl = [ - 'Test_TC_PCC_1_1', - 'Test_TC_PCC_2_1', - 'Test_TC_PCC_2_2', - 'Test_TC_PCC_2_3', - 'Test_TC_PCC_2_4', - ]; - - const PowerSourceConfiguration = [ - 'Test_TC_PSCFG_1_1', - ]; - - const RelativeHumidityMeasurement = [ - 'Test_TC_RH_1_1', - 'Test_TC_RH_2_1', - ]; - - const SecureChannel = [ - 'Test_TC_SC_4_2', - ]; - - const Switch = [ - 'Test_TC_SWTCH_2_1', - ]; - - const TemperatureMeasurement = [ - 'Test_TC_TM_1_1', - 'Test_TC_TM_2_1', - ]; - - const Thermostat = [ - 'Test_TC_TSTAT_1_1', - 'Test_TC_TSTAT_2_1', - 'Test_TC_TSTAT_2_2', - ]; - - const ThermostatUserConfiguration = [ - 'Test_TC_TSUIC_1_1', - 'Test_TC_TSUIC_2_1', - 'Test_TC_TSUIC_2_2', - ]; - - const ThreadNetworkDiagnostics = [ - 'Test_TC_DIAG_TH_NW_2_1', - 'Test_TC_DIAG_TH_NW_2_2', - 'Test_TC_DIAG_TH_NW_2_3', - 'Test_TC_DIAG_TH_NW_2_4', - ]; - - const WiFiNetworkDiagnostics = [ - 'Test_TC_DGWIFI_2_1', - 'Test_TC_DGWIFI_2_3', - ]; - - const WindowCovering = [ - 'Test_TC_WNCV_1_1', - 'Test_TC_WNCV_2_1', - 'Test_TC_WNCV_2_2', - 'Test_TC_WNCV_2_3', - 'Test_TC_WNCV_2_4', - 'Test_TC_WNCV_2_5', - 'Test_TC_WNCV_3_1', - 'Test_TC_WNCV_3_2', - 'Test_TC_WNCV_3_3', - 'Test_TC_WNCV_3_4', - 'Test_TC_WNCV_3_5', - 'Test_TC_WNCV_4_1', - 'Test_TC_WNCV_4_2', - 'Test_TC_WNCV_4_3', - 'Test_TC_WNCV_4_4', - 'Test_TC_WNCV_4_5', - ]; - - const TV = [ - 'TV_TargetNavigatorCluster', - 'TV_AudioOutputCluster', - 'TV_ApplicationLauncherCluster', - 'TV_KeypadInputCluster', - 'TV_AccountLoginCluster', - 'TV_WakeOnLanCluster', - 'TV_ApplicationBasicCluster', - 'TV_MediaPlaybackCluster', - 'TV_ChannelCluster', - 'TV_LowPowerCluster', - 'TV_ContentLauncherCluster', - 'TV_MediaInputCluster', - ]; - - const Others = [ - 'TestCluster', - 'TestClusterComplexTypes', - 'TestConstraints', - 'TestDelayCommands', - 'TestEvents', - 'TestDiscovery', - 'TestLogCommands', - 'TestSaveAs', - 'TestConfigVariables', - 'TestDescriptorCluster', - 'TestBasicInformation', - 'TestGeneralCommissioning', - 'TestIdentifyCluster', - 'TestOperationalCredentialsCluster', - 'TestModeSelectCluster', - 'TestSelfFabricRemoval', - 'TestSystemCommands', - 'TestBinding', - 'TestUserLabelCluster', - 'TestArmFailSafe', - 'TestFanControl', - ]; - - const MultiAdmin = [ - 'TestMultiAdmin', - ]; - - const SoftwareDiagnostics = [ - 'Test_TC_DGSW_2_1', - 'Test_TC_DGSW_2_2', - 'Test_TC_DGSW_2_3', - ]; - - const Subscriptions = [ - 'TestSubscribe_OnOff', - ]; - - const DoorLock = [ - 'DL_UsersAndCredentials', - 'DL_LockUnlock', - 'DL_Schedules', - 'Test_TC_DLRK_2_2', - 'Test_TC_DLRK_2_3', - 'Test_TC_DLRK_2_4', - 'Test_TC_DLRK_2_5', - 'Test_TC_DLRK_2_7', - 'Test_TC_DLRK_2_9', - ]; - - const Groups = [ - 'TestGroupMessaging', - 'TestGroupsCluster', - 'TestGroupKeyManagementCluster', - ]; - - const tests = [ - AccessControl, - BooleanState, - Actions, - ColorControl, - DeviceManagement, - Descriptor, - EthernetNetworkDiagnostics, - FlowMeasurement, - GeneralCommissioning, - GeneralDiagnostics, - Identify, - IlluminanceMeasurement, - LevelControl, - MediaControl, - ModeSelect, - MultipleFabrics, - OTASoftwareUpdate, - OccupancySensing, - OnOff, - PowerSource, - PressureMeasurement, - PumpConfigurationControl, - PowerSourceConfiguration, - RelativeHumidityMeasurement, - SecureChannel, - Switch, - TemperatureMeasurement, - Thermostat, - ThermostatUserConfiguration, - ThreadNetworkDiagnostics, - UserLabel, - WiFiNetworkDiagnostics, - WindowCovering, - TV, - Others, - MultiAdmin, - SoftwareDiagnostics, - Subscriptions, - DoorLock, - Groups, - ].flat(1); - - tests.disable = disable.bind(tests); - return tests; + const AccessControl = ["TestAccessControlCluster"]; + + const BooleanState = ["Test_TC_BOOL_1_1", "Test_TC_BOOL_2_1"]; + + const Actions = ["Test_TC_ACT_1_1"]; + + const ColorControl = [ + "Test_TC_CC_1_1", + "Test_TC_CC_2_1", + "Test_TC_CC_3_1", + "Test_TC_CC_3_2", + "Test_TC_CC_3_3", + "Test_TC_CC_4_1", + "Test_TC_CC_4_2", + "Test_TC_CC_4_3", + "Test_TC_CC_4_4", + "Test_TC_CC_5_1", + "Test_TC_CC_5_2", + "Test_TC_CC_5_3", + "Test_TC_CC_6_1", + "Test_TC_CC_6_2", + "Test_TC_CC_6_3", + "Test_TC_CC_7_1", + "Test_TC_CC_7_2", + "Test_TC_CC_7_3", + "Test_TC_CC_7_4", + "Test_TC_CC_8_1", + ]; + + const DeviceManagement = ["Test_TC_BINFO_2_1"]; + + const Descriptor = ["Test_TC_DESC_1_1"]; + + const EthernetNetworkDiagnostics = [ + "Test_TC_DGETH_2_1", + "Test_TC_DGETH_2_2", + ]; + + const FlowMeasurement = ["Test_TC_FLW_1_1", "Test_TC_FLW_2_1"]; + + const GeneralCommissioning = ["Test_TC_CGEN_1_1", "Test_TC_CGEN_2_1"]; + + const GeneralDiagnostics = ["Test_TC_DGGEN_1_1", "Test_TC_DGGEN_2_1"]; + + const Identify = [ + "Test_TC_I_1_1", + "Test_TC_I_2_1", + "Test_TC_I_2_2", + "Test_TC_I_2_3", + ]; + + const IlluminanceMeasurement = ["Test_TC_ILL_1_1", "Test_TC_ILL_2_1"]; + + const OccupancySensing = ["Test_TC_OCC_1_1", "Test_TC_OCC_2_1"]; + + const LevelControl = [ + "Test_TC_LVL_1_1", + "Test_TC_LVL_2_1", + "Test_TC_LVL_2_2", + "Test_TC_LVL_3_1", + "Test_TC_LVL_4_1", + "Test_TC_LVL_5_1", + "Test_TC_LVL_6_1", + ]; + + const UserLabel = [ + "Test_TC_ULABEL_1_1", + "Test_TC_ULABEL_2_2", + "Test_TC_ULABEL_2_3", + "Test_TC_ULABEL_2_4", + "Test_TC_ULABEL_2_5", + ]; + + const MediaControl = [ + "Test_TC_MC_1_1", + "Test_TC_MC_1_2", + "Test_TC_MC_1_3", + "Test_TC_MC_1_4", + "Test_TC_MC_1_5", + "Test_TC_MC_1_6", + "Test_TC_MC_1_7", + "Test_TC_MC_1_8", + "Test_TC_MC_1_9", + "Test_TC_MC_1_10", + "Test_TC_MC_1_11", + "Test_TC_MC_1_12", + "Test_TC_MC_2_1", + "Test_TC_MC_3_2", + "Test_TC_MC_3_3", + "Test_TC_MC_3_5", + "Test_TC_MC_3_6", + "Test_TC_MC_3_7", + "Test_TC_MC_3_8", + "Test_TC_MC_3_9", + "Test_TC_MC_3_10", + "Test_TC_MC_3_11", + "Test_TC_MC_3_12", + "Test_TC_MC_3_13", + "Test_TC_MC_5_1", + "Test_TC_MC_5_2", + "Test_TC_MC_5_3", + "Test_TC_MC_6_1", + "Test_TC_MC_6_2", + "Test_TC_MC_6_3", + "Test_TC_MC_6_4", + "Test_TC_MC_7_1", + "Test_TC_MC_7_2", + "Test_TC_MC_8_1", + "Test_TC_MC_9_1", + "Test_TC_MC_10_1", + ]; + + const ModeSelect = ["Test_TC_MOD_1_1"]; + + const MultipleFabrics = ["Test_TC_MF_1_3", "Test_TC_MF_1_4"]; + + const OTASoftwareUpdate = ["OTA_SuccessfulTransfer"]; + + const OnOff = [ + "Test_TC_OO_1_1", + "Test_TC_OO_2_1", + "Test_TC_OO_2_2", + "Test_TC_OO_2_4", + ]; + + const PowerSource = ["Test_TC_PS_1_1", "Test_TC_PS_2_1"]; + + const PressureMeasurement = ["Test_TC_PRS_1_1", "Test_TC_PRS_2_1"]; + + const PumpConfigurationControl = [ + "Test_TC_PCC_1_1", + "Test_TC_PCC_2_1", + "Test_TC_PCC_2_2", + "Test_TC_PCC_2_3", + "Test_TC_PCC_2_4", + ]; + + const PowerSourceConfiguration = ["Test_TC_PSCFG_1_1"]; + + const RelativeHumidityMeasurement = ["Test_TC_RH_1_1", "Test_TC_RH_2_1"]; + + const SecureChannel = ["Test_TC_SC_4_2"]; + + const Switch = ["Test_TC_SWTCH_2_1"]; + + const TemperatureMeasurement = ["Test_TC_TM_1_1", "Test_TC_TM_2_1"]; + + const Thermostat = [ + "Test_TC_TSTAT_1_1", + "Test_TC_TSTAT_2_1", + "Test_TC_TSTAT_2_2", + ]; + + const ThermostatUserConfiguration = [ + "Test_TC_TSUIC_1_1", + "Test_TC_TSUIC_2_1", + "Test_TC_TSUIC_2_2", + ]; + + const ThreadNetworkDiagnostics = [ + "Test_TC_DIAG_TH_NW_2_1", + "Test_TC_DIAG_TH_NW_2_2", + "Test_TC_DIAG_TH_NW_2_3", + "Test_TC_DIAG_TH_NW_2_4", + ]; + + const WiFiNetworkDiagnostics = ["Test_TC_DGWIFI_2_1", "Test_TC_DGWIFI_2_3"]; + + const WindowCovering = [ + "Test_TC_WNCV_1_1", + "Test_TC_WNCV_2_1", + "Test_TC_WNCV_2_2", + "Test_TC_WNCV_2_3", + "Test_TC_WNCV_2_4", + "Test_TC_WNCV_2_5", + "Test_TC_WNCV_3_1", + "Test_TC_WNCV_3_2", + "Test_TC_WNCV_3_3", + "Test_TC_WNCV_3_4", + "Test_TC_WNCV_3_5", + "Test_TC_WNCV_4_1", + "Test_TC_WNCV_4_2", + "Test_TC_WNCV_4_3", + "Test_TC_WNCV_4_4", + "Test_TC_WNCV_4_5", + ]; + + const TV = [ + "TV_TargetNavigatorCluster", + "TV_AudioOutputCluster", + "TV_ApplicationLauncherCluster", + "TV_KeypadInputCluster", + "TV_AccountLoginCluster", + "TV_WakeOnLanCluster", + "TV_ApplicationBasicCluster", + "TV_MediaPlaybackCluster", + "TV_ChannelCluster", + "TV_LowPowerCluster", + "TV_ContentLauncherCluster", + "TV_MediaInputCluster", + ]; + + const Others = [ + "TestCluster", + "TestClusterComplexTypes", + "TestConstraints", + "TestDelayCommands", + "TestEvents", + "TestDiscovery", + "TestLogCommands", + "TestSaveAs", + "TestConfigVariables", + "TestDescriptorCluster", + "TestBasicInformation", + "TestGeneralCommissioning", + "TestIdentifyCluster", + "TestOperationalCredentialsCluster", + "TestModeSelectCluster", + "TestSelfFabricRemoval", + "TestSystemCommands", + "TestBinding", + "TestUserLabelCluster", + "TestArmFailSafe", + "TestFanControl", + ]; + + const MultiAdmin = ["TestMultiAdmin"]; + + const SoftwareDiagnostics = [ + "Test_TC_DGSW_2_1", + "Test_TC_DGSW_2_2", + "Test_TC_DGSW_2_3", + ]; + + const Subscriptions = ["TestSubscribe_OnOff"]; + + const DoorLock = [ + "DL_UsersAndCredentials", + "DL_LockUnlock", + "DL_Schedules", + "Test_TC_DLRK_2_2", + "Test_TC_DLRK_2_3", + "Test_TC_DLRK_2_4", + "Test_TC_DLRK_2_5", + "Test_TC_DLRK_2_7", + "Test_TC_DLRK_2_9", + ]; + + const Groups = [ + "TestGroupMessaging", + "TestGroupsCluster", + "TestGroupKeyManagementCluster", + ]; + + const tests = [ + AccessControl, + BooleanState, + Actions, + ColorControl, + DeviceManagement, + Descriptor, + EthernetNetworkDiagnostics, + FlowMeasurement, + GeneralCommissioning, + GeneralDiagnostics, + Identify, + IlluminanceMeasurement, + LevelControl, + MediaControl, + ModeSelect, + MultipleFabrics, + OTASoftwareUpdate, + OccupancySensing, + OnOff, + PowerSource, + PressureMeasurement, + PumpConfigurationControl, + PowerSourceConfiguration, + RelativeHumidityMeasurement, + SecureChannel, + Switch, + TemperatureMeasurement, + Thermostat, + ThermostatUserConfiguration, + ThreadNetworkDiagnostics, + UserLabel, + WiFiNetworkDiagnostics, + WindowCovering, + TV, + Others, + MultiAdmin, + SoftwareDiagnostics, + Subscriptions, + DoorLock, + Groups, + ].flat(1); + + tests.disable = disable.bind(tests); + return tests; } // clang-format on diff --git a/zzz_generated/chip-tool/zap-generated/test/Commands.h b/zzz_generated/chip-tool/zap-generated/test/Commands.h index 9c2c21f6ff14b2..c3bd19a940089b 100644 --- a/zzz_generated/chip-tool/zap-generated/test/Commands.h +++ b/zzz_generated/chip-tool/zap-generated/test/Commands.h @@ -472,7 +472,6 @@ class ManualTestList : public Command printf("Test_TC_WNCV_7_1\n"); printf("Test_TC_FLW_2_2\n"); printf("Test_TC_FLW_3_1\n"); - printf("Test_TC_OCC_2_2\n"); printf("Test_TC_OCC_2_3\n"); printf("Test_TC_OCC_2_4\n"); printf("Test_TC_OCC_3_1\n"); @@ -1914,23 +1913,13 @@ class Test_TC_BOOL_1_1Suite : public TestCommand { chip::app::DataModel::DecodableList value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - { - auto iter_0 = value.begin(); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 0)); - VerifyOrReturn(CheckValue("attributeList[0]", iter_0.GetValue(), 0UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 1)); - VerifyOrReturn(CheckValue("attributeList[1]", iter_0.GetValue(), 65528UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 2)); - VerifyOrReturn(CheckValue("attributeList[2]", iter_0.GetValue(), 65529UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 3)); - VerifyOrReturn(CheckValue("attributeList[3]", iter_0.GetValue(), 65531UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 4)); - VerifyOrReturn(CheckValue("attributeList[4]", iter_0.GetValue(), 65532UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 5)); - VerifyOrReturn(CheckValue("attributeList[5]", iter_0.GetValue(), 65533UL)); - VerifyOrReturn(CheckNoMoreListItems("attributeList", iter_0, 6)); - } VerifyOrReturn(CheckConstraintType("value", "", "list")); + VerifyOrReturn(CheckConstraintContains("value", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65533UL)); } break; case 4: @@ -2304,8 +2293,9 @@ class Test_TC_CC_1_1Suite : public TestCommand { uint32_t value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("featureMap", value, 1UL)); VerifyOrReturn(CheckConstraintType("value", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("value", value, 31UL)); } break; case 3: @@ -2389,7 +2379,7 @@ class Test_TC_CC_1_1Suite : public TestCommand } case 2: { LogStep(2, "Read the global attribute constraints : FeatureMap"); - VerifyOrDo(!ShouldSkip("PICS_SKIP_SAMPLE_APP && (CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03)"), + VerifyOrDo(!ShouldSkip("(CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03)"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); return ReadAttribute(kIdentityAlpha, GetEndpoint(1), ColorControl::Id, ColorControl::Attributes::FeatureMap::Id, true, chip::NullOptional); @@ -10124,29 +10114,16 @@ class Test_TC_DESC_1_1Suite : public TestCommand { chip::app::DataModel::DecodableList value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - { - auto iter_0 = value.begin(); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 0)); - VerifyOrReturn(CheckValue("attributeList[0]", iter_0.GetValue(), 0UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 1)); - VerifyOrReturn(CheckValue("attributeList[1]", iter_0.GetValue(), 1UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 2)); - VerifyOrReturn(CheckValue("attributeList[2]", iter_0.GetValue(), 2UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 3)); - VerifyOrReturn(CheckValue("attributeList[3]", iter_0.GetValue(), 3UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 4)); - VerifyOrReturn(CheckValue("attributeList[4]", iter_0.GetValue(), 65528UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 5)); - VerifyOrReturn(CheckValue("attributeList[5]", iter_0.GetValue(), 65529UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 6)); - VerifyOrReturn(CheckValue("attributeList[6]", iter_0.GetValue(), 65531UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 7)); - VerifyOrReturn(CheckValue("attributeList[7]", iter_0.GetValue(), 65532UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 8)); - VerifyOrReturn(CheckValue("attributeList[8]", iter_0.GetValue(), 65533UL)); - VerifyOrReturn(CheckNoMoreListItems("attributeList", iter_0, 9)); - } VerifyOrReturn(CheckConstraintType("value", "", "list")); + VerifyOrReturn(CheckConstraintContains("value", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 1UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 2UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 3UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65533UL)); } break; case 4: @@ -11867,25 +11844,14 @@ class Test_TC_I_1_1Suite : public TestCommand { chip::app::DataModel::DecodableList value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - { - auto iter_0 = value.begin(); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 0)); - VerifyOrReturn(CheckValue("attributeList[0]", iter_0.GetValue(), 0UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 1)); - VerifyOrReturn(CheckValue("attributeList[1]", iter_0.GetValue(), 1UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 2)); - VerifyOrReturn(CheckValue("attributeList[2]", iter_0.GetValue(), 65528UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 3)); - VerifyOrReturn(CheckValue("attributeList[3]", iter_0.GetValue(), 65529UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 4)); - VerifyOrReturn(CheckValue("attributeList[4]", iter_0.GetValue(), 65531UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 5)); - VerifyOrReturn(CheckValue("attributeList[5]", iter_0.GetValue(), 65532UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 6)); - VerifyOrReturn(CheckValue("attributeList[6]", iter_0.GetValue(), 65533UL)); - VerifyOrReturn(CheckNoMoreListItems("attributeList", iter_0, 7)); - } VerifyOrReturn(CheckConstraintType("value", "", "list")); + VerifyOrReturn(CheckConstraintContains("value", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 1UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65533UL)); } break; case 4: @@ -12884,7 +12850,7 @@ class Test_TC_ILL_2_1Suite : public TestCommand chip::app::DataModel::Nullable value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); VerifyOrReturn(CheckConstraintType("value", "", "uint16")); - VerifyOrReturn(CheckConstraintMinValue("value", value, 1U)); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0U)); VerifyOrReturn(CheckConstraintMaxValue("value", value, 65534U)); } break; @@ -12952,7 +12918,6 @@ class Test_TC_ILL_2_1Suite : public TestCommand } case 1: { LogStep(1, "TH reads MeasuredValue attribute from DUT"); - VerifyOrDo(!ShouldSkip("PICS_SKIP_SAMPLE_APP"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); return ReadAttribute(kIdentityAlpha, GetEndpoint(1), IlluminanceMeasurement::Id, IlluminanceMeasurement::Attributes::MeasuredValue::Id, true, chip::NullOptional); } @@ -15225,8 +15190,9 @@ class Test_TC_MC_1_2Suite : public TestCommand { uint32_t value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("featureMap", value, 1UL)); VerifyOrReturn(CheckConstraintType("value", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("value", value, 7UL)); } break; case 3: @@ -15910,8 +15876,9 @@ class Test_TC_MC_1_6Suite : public TestCommand { uint32_t value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("featureMap", value, 1UL)); VerifyOrReturn(CheckConstraintType("value", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("value", value, 3UL)); } break; case 3: @@ -16077,8 +16044,9 @@ class Test_TC_MC_1_7Suite : public TestCommand { uint32_t value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("featureMap", value, 1UL)); VerifyOrReturn(CheckConstraintType("value", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("value", value, 3UL)); } break; case 3: @@ -16252,25 +16220,14 @@ class Test_TC_MC_1_8Suite : public TestCommand { chip::app::DataModel::DecodableList value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - { - auto iter_0 = value.begin(); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 0)); - VerifyOrReturn(CheckValue("attributeList[0]", iter_0.GetValue(), 0UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 1)); - VerifyOrReturn(CheckValue("attributeList[1]", iter_0.GetValue(), 1UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 2)); - VerifyOrReturn(CheckValue("attributeList[2]", iter_0.GetValue(), 65528UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 3)); - VerifyOrReturn(CheckValue("attributeList[3]", iter_0.GetValue(), 65529UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 4)); - VerifyOrReturn(CheckValue("attributeList[4]", iter_0.GetValue(), 65531UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 5)); - VerifyOrReturn(CheckValue("attributeList[5]", iter_0.GetValue(), 65532UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 6)); - VerifyOrReturn(CheckValue("attributeList[6]", iter_0.GetValue(), 65533UL)); - VerifyOrReturn(CheckNoMoreListItems("attributeList", iter_0, 7)); - } VerifyOrReturn(CheckConstraintType("value", "", "list")); + VerifyOrReturn(CheckConstraintContains("value", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 1UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65533UL)); } break; case 4: @@ -16794,8 +16751,9 @@ class Test_TC_MC_1_11Suite : public TestCommand { uint32_t value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("featureMap", value, 1UL)); VerifyOrReturn(CheckConstraintType("value", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("value", value, 3UL)); } break; case 3: @@ -18619,7 +18577,7 @@ class Test_TC_MC_5_2Suite : public TestCommand class Test_TC_MC_5_3Suite : public TestCommand { public: - Test_TC_MC_5_3Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_MC_5_3", 6, credsIssuerConfig) + Test_TC_MC_5_3Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_MC_5_3", 7, credsIssuerConfig) { AddArgument("nodeId", 0, UINT64_MAX, &mNodeId); AddArgument("cluster", &mCluster); @@ -18661,6 +18619,10 @@ class Test_TC_MC_5_3Suite : public TestCommand shouldContinue = true; break; case 1: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + shouldContinue = true; + break; + case 2: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { chip::app::DataModel::DecodableList value; @@ -18668,7 +18630,7 @@ class Test_TC_MC_5_3Suite : public TestCommand VerifyOrReturn(CheckConstraintType("value", "", "list")); } break; - case 2: + case 3: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { chip::app::DataModel::Nullable value; @@ -18676,14 +18638,14 @@ class Test_TC_MC_5_3Suite : public TestCommand VerifyOrReturn(CheckValueNonNull("currentChannel", value)); } break; - case 3: + case 4: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; - case 4: + case 5: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); shouldContinue = true; break; - case 5: + case 6: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { chip::app::DataModel::Nullable value; @@ -18715,19 +18677,29 @@ class Test_TC_MC_5_3Suite : public TestCommand return WaitForCommissionee(kIdentityAlpha, value); } case 1: { - LogStep(1, "Reads the ChannelList attribute from the DUT"); + LogStep(1, "Reads the Lineup attribute from the DUT and Verify that the response contains a lineup info object"); + VerifyOrDo(!ShouldSkip("MC_CHANNEL.S.A0001 && PICS_USER_PROMPT"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); + ListFreer listFreer; + chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; + value.message = chip::Span("Please enter 'y' for successgarbage: not in length on purpose", 28); + value.expectedValue.Emplace(); + value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); + return UserPrompt(kIdentityAlpha, value); + } + case 2: { + LogStep(2, "Reads the ChannelList attribute from the DUT"); VerifyOrDo(!ShouldSkip("MC_CHANNEL.S.A0000"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Channel::Id, Channel::Attributes::ChannelList::Id, true, chip::NullOptional); } - case 2: { - LogStep(2, "Reads the CurrentChannel attribute from the DUT"); + case 3: { + LogStep(3, "Reads the CurrentChannel attribute from the DUT"); VerifyOrDo(!ShouldSkip("MC_CHANNEL.S.A0002"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Channel::Id, Channel::Attributes::CurrentChannel::Id, true, chip::NullOptional); } - case 3: { - LogStep(3, "Sends a SkipChannel command to the DUT"); + case 4: { + LogStep(4, "Sends a SkipChannel command to the DUT"); VerifyOrDo(!ShouldSkip("MC_CHANNEL.S.C0003"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); ListFreer listFreer; chip::app::Clusters::Channel::Commands::SkipChannel::Type value; @@ -18737,8 +18709,8 @@ class Test_TC_MC_5_3Suite : public TestCommand ); } - case 4: { - LogStep(4, "Verify that the channel has changed on the device"); + case 5: { + LogStep(5, "Verify that the channel has changed on the device"); VerifyOrDo(!ShouldSkip("PICS_USER_PROMPT"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); ListFreer listFreer; chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; @@ -18748,8 +18720,8 @@ class Test_TC_MC_5_3Suite : public TestCommand value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); return UserPrompt(kIdentityAlpha, value); } - case 5: { - LogStep(5, "Reads the CurrentChannel attribute from the DUT"); + case 6: { + LogStep(6, "Reads the CurrentChannel attribute from the DUT"); VerifyOrDo(!ShouldSkip("MC_CHANNEL.S.A0002"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Channel::Id, Channel::Attributes::CurrentChannel::Id, true, chip::NullOptional); @@ -21897,31 +21869,17 @@ class Test_TC_OO_1_1Suite : public TestCommand { chip::app::DataModel::DecodableList value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - { - auto iter_0 = value.begin(); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 0)); - VerifyOrReturn(CheckValue("attributeList[0]", iter_0.GetValue(), 0UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 1)); - VerifyOrReturn(CheckValue("attributeList[1]", iter_0.GetValue(), 16384UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 2)); - VerifyOrReturn(CheckValue("attributeList[2]", iter_0.GetValue(), 16385UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 3)); - VerifyOrReturn(CheckValue("attributeList[3]", iter_0.GetValue(), 16386UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 4)); - VerifyOrReturn(CheckValue("attributeList[4]", iter_0.GetValue(), 16387UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 5)); - VerifyOrReturn(CheckValue("attributeList[5]", iter_0.GetValue(), 65528UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 6)); - VerifyOrReturn(CheckValue("attributeList[6]", iter_0.GetValue(), 65529UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 7)); - VerifyOrReturn(CheckValue("attributeList[7]", iter_0.GetValue(), 65531UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 8)); - VerifyOrReturn(CheckValue("attributeList[8]", iter_0.GetValue(), 65532UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 9)); - VerifyOrReturn(CheckValue("attributeList[9]", iter_0.GetValue(), 65533UL)); - VerifyOrReturn(CheckNoMoreListItems("attributeList", iter_0, 10)); - } VerifyOrReturn(CheckConstraintType("value", "", "list")); + VerifyOrReturn(CheckConstraintContains("value", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 16384UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 16385UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 16386UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 16387UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65533UL)); } break; case 4: @@ -27095,8 +27053,9 @@ class Test_TC_TSTAT_1_1Suite : public TestCommand { uint32_t value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("featureMap", value, 1UL)); VerifyOrReturn(CheckConstraintType("value", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("value", value, 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("value", value, 63UL)); } break; case 3: @@ -27165,10 +27124,8 @@ class Test_TC_TSTAT_1_1Suite : public TestCommand } case 2: { LogStep(2, "Read the optional global attribute constraints: FeatureMap"); - VerifyOrDo( - !ShouldSkip( - "PICS_SKIP_SAMPLE_APP && ( TSTAT_HEAT || TSTAT_COOL || TSTAT_OCC || TSTAT_SCH || TSTAT_SB || TSTAT_AUTO )"), - return ContinueOnChipMainThread(CHIP_NO_ERROR)); + VerifyOrDo(!ShouldSkip("( TSTAT_HEAT || TSTAT_COOL || TSTAT_OCC || TSTAT_SCH || TSTAT_SB || TSTAT_AUTO )"), + return ContinueOnChipMainThread(CHIP_NO_ERROR)); return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::FeatureMap::Id, true, chip::NullOptional); } @@ -31932,23 +31889,13 @@ class Test_TC_ULABEL_1_1Suite : public TestCommand { chip::app::DataModel::DecodableList value; VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - { - auto iter_0 = value.begin(); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 0)); - VerifyOrReturn(CheckValue("attributeList[0]", iter_0.GetValue(), 0UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 1)); - VerifyOrReturn(CheckValue("attributeList[1]", iter_0.GetValue(), 65528UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 2)); - VerifyOrReturn(CheckValue("attributeList[2]", iter_0.GetValue(), 65529UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 3)); - VerifyOrReturn(CheckValue("attributeList[3]", iter_0.GetValue(), 65531UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 4)); - VerifyOrReturn(CheckValue("attributeList[4]", iter_0.GetValue(), 65532UL)); - VerifyOrReturn(CheckNextListItemDecodes("attributeList", iter_0, 5)); - VerifyOrReturn(CheckValue("attributeList[5]", iter_0.GetValue(), 65533UL)); - VerifyOrReturn(CheckNoMoreListItems("attributeList", iter_0, 6)); - } VerifyOrReturn(CheckConstraintType("value", "", "list")); + VerifyOrReturn(CheckConstraintContains("value", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("value", value, 65533UL)); } break; case 4: @@ -73579,7 +73526,7 @@ class Test_TC_MF_1_26Suite : public TestCommand class Test_TC_MF_1_27Suite : public TestCommand { public: - Test_TC_MF_1_27Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_MF_1_27", 7, credsIssuerConfig) + Test_TC_MF_1_27Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_MF_1_27", 8, credsIssuerConfig) { AddArgument("nodeId", 0, UINT64_MAX, &mNodeId); AddArgument("timeout", 0, UINT16_MAX, &mTimeout); @@ -73617,12 +73564,16 @@ class Test_TC_MF_1_27Suite : public TestCommand break; case 2: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + shouldContinue = true; break; case 3: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - shouldContinue = true; break; case 4: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + shouldContinue = true; + break; + case 5: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { uint8_t value; @@ -73630,10 +73581,10 @@ class Test_TC_MF_1_27Suite : public TestCommand VerifyOrReturn(CheckValue("windowStatus", value, 0U)); } break; - case 5: + case 6: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_INVALID_COMMAND)); break; - case 6: + case 7: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { uint8_t value; @@ -73658,19 +73609,31 @@ class Test_TC_MF_1_27Suite : public TestCommand { case 0: { LogStep(0, "Factory Reset the DUT_CE"); + VerifyOrDo(!ShouldSkip("PICS_SDK_CI_ONLY"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); ListFreer listFreer; chip::app::Clusters::SystemCommands::Commands::FactoryReset::Type value; return FactoryReset(kIdentityAlpha, value); } case 1: { - LogStep(1, "TH_CR1 starts a commissioning process with DUT_CE"); + LogStep(1, "Factory Reset the DUT_CE"); + VerifyOrDo(!ShouldSkip("PICS_SKIP_SAMPLE_APP"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); + ListFreer listFreer; + chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; + value.message = + chip::Span("Please reboot the DUT and enter 'y' after DUT startsgarbage: not in length on purpose", 52); + value.expectedValue.Emplace(); + value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); + return UserPrompt(kIdentityAlpha, value); + } + case 2: { + LogStep(2, "TH_CR1 starts a commissioning process with DUT_CE"); ListFreer listFreer; chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; value.nodeId = mNodeId.HasValue() ? mNodeId.Value() : 305414945ULL; return WaitForCommissionee(kIdentityAlpha, value); } - case 2: { - LogStep(2, "TH_CR1 opens a commissioning window on DUT_CE"); + case 3: { + LogStep(3, "TH_CR1 opens a commissioning window on DUT_CE"); ListFreer listFreer; chip::app::Clusters::AdministratorCommissioning::Commands::OpenBasicCommissioningWindow::Type value; value.commissioningTimeout = 180U; @@ -73680,20 +73643,20 @@ class Test_TC_MF_1_27Suite : public TestCommand ); } - case 3: { - LogStep(3, "Wait for commissioning Window to 301 seconds"); + case 4: { + LogStep(4, "Wait for commissioning Window to 301 seconds"); ListFreer listFreer; chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; value.ms = 181000UL; return WaitForMs(kIdentityAlpha, value); } - case 4: { - LogStep(4, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); + case 5: { + LogStep(5, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); return ReadAttribute(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id, AdministratorCommissioning::Attributes::WindowStatus::Id, true, chip::NullOptional); } - case 5: { - LogStep(5, "TH_CR1 opens a commissioning window on DUT_CE"); + case 6: { + LogStep(6, "TH_CR1 opens a commissioning window on DUT_CE"); ListFreer listFreer; chip::app::Clusters::AdministratorCommissioning::Commands::OpenBasicCommissioningWindow::Type value; value.commissioningTimeout = 179U; @@ -73703,8 +73666,8 @@ class Test_TC_MF_1_27Suite : public TestCommand ); } - case 6: { - LogStep(6, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); + case 7: { + LogStep(7, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); return ReadAttribute(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id, AdministratorCommissioning::Attributes::WindowStatus::Id, true, chip::NullOptional); } @@ -73716,7 +73679,7 @@ class Test_TC_MF_1_27Suite : public TestCommand class Test_TC_MF_1_28Suite : public TestCommand { public: - Test_TC_MF_1_28Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_MF_1_28", 7, credsIssuerConfig) + Test_TC_MF_1_28Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_MF_1_28", 8, credsIssuerConfig) { AddArgument("nodeId", 0, UINT64_MAX, &mNodeId); AddArgument("timeout", 0, UINT16_MAX, &mTimeout); @@ -73754,12 +73717,16 @@ class Test_TC_MF_1_28Suite : public TestCommand break; case 2: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + shouldContinue = true; break; case 3: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - shouldContinue = true; break; case 4: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + shouldContinue = true; + break; + case 5: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { uint8_t value; @@ -73767,10 +73734,10 @@ class Test_TC_MF_1_28Suite : public TestCommand VerifyOrReturn(CheckValue("windowStatus", value, 0U)); } break; - case 5: + case 6: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_INVALID_COMMAND)); break; - case 6: + case 7: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); { uint8_t value; @@ -73800,14 +73767,25 @@ class Test_TC_MF_1_28Suite : public TestCommand return FactoryReset(kIdentityAlpha, value); } case 1: { - LogStep(1, "TH_CR1 starts a commissioning process with DUT_CE"); + LogStep(1, "Factory Reset the DUT_CE"); + VerifyOrDo(!ShouldSkip("PICS_SKIP_SAMPLE_APP"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); + ListFreer listFreer; + chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; + value.message = + chip::Span("Please reboot the DUT and enter 'y' after DUT startsgarbage: not in length on purpose", 52); + value.expectedValue.Emplace(); + value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); + return UserPrompt(kIdentityAlpha, value); + } + case 2: { + LogStep(2, "TH_CR1 starts a commissioning process with DUT_CE"); ListFreer listFreer; chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; value.nodeId = mNodeId.HasValue() ? mNodeId.Value() : 305414945ULL; return WaitForCommissionee(kIdentityAlpha, value); } - case 2: { - LogStep(2, "TH_CR1 opens a commissioning window on DUT_CE"); + case 3: { + LogStep(3, "TH_CR1 opens a commissioning window on DUT_CE"); ListFreer listFreer; chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value; value.commissioningTimeout = 180U; @@ -73826,20 +73804,20 @@ class Test_TC_MF_1_28Suite : public TestCommand ); } - case 3: { - LogStep(3, "Wait for commissioning Window to 301 seconds"); + case 4: { + LogStep(4, "Wait for commissioning Window to 301 seconds"); ListFreer listFreer; chip::app::Clusters::DelayCommands::Commands::WaitForMs::Type value; value.ms = 181000UL; return WaitForMs(kIdentityAlpha, value); } - case 4: { - LogStep(4, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); + case 5: { + LogStep(5, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); return ReadAttribute(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id, AdministratorCommissioning::Attributes::WindowStatus::Id, true, chip::NullOptional); } - case 5: { - LogStep(5, "TH_CR1 opens a commissioning window on DUT_CE"); + case 6: { + LogStep(6, "TH_CR1 opens a commissioning window on DUT_CE"); ListFreer listFreer; chip::app::Clusters::AdministratorCommissioning::Commands::OpenCommissioningWindow::Type value; value.commissioningTimeout = 179U; @@ -73858,8 +73836,8 @@ class Test_TC_MF_1_28Suite : public TestCommand ); } - case 6: { - LogStep(6, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); + case 7: { + LogStep(7, "TH_CR1 reads the window status to verify the DUT_CE window is closed"); return ReadAttribute(kIdentityAlpha, GetEndpoint(0), AdministratorCommissioning::Id, AdministratorCommissioning::Attributes::WindowStatus::Id, true, chip::NullOptional); } @@ -78718,118 +78696,6 @@ class Test_TC_FLW_3_1Suite : public TestCommand } }; -class Test_TC_OCC_2_2Suite : public TestCommand -{ -public: - Test_TC_OCC_2_2Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_OCC_2_2", 4, credsIssuerConfig) - { - AddArgument("nodeId", 0, UINT64_MAX, &mNodeId); - AddArgument("cluster", &mCluster); - AddArgument("endpoint", 0, UINT16_MAX, &mEndpoint); - AddArgument("timeout", 0, UINT16_MAX, &mTimeout); - } - - ~Test_TC_OCC_2_2Suite() {} - - chip::System::Clock::Timeout GetWaitDuration() const override - { - return chip::System::Clock::Seconds16(mTimeout.ValueOr(kTimeoutInSeconds)); - } - -private: - chip::Optional mNodeId; - chip::Optional mCluster; - chip::Optional mEndpoint; - chip::Optional mTimeout; - - uint8_t OccupancyValue; - - chip::EndpointId GetEndpoint(chip::EndpointId endpoint) { return mEndpoint.HasValue() ? mEndpoint.Value() : endpoint; } - - // - // Tests methods - // - - void OnResponse(const chip::app::StatusIB & status, chip::TLV::TLVReader * data) override - { - bool shouldContinue = false; - - switch (mTestIndex - 1) - { - case 0: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - shouldContinue = true; - break; - case 1: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - { - uint8_t value; - VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - VerifyOrReturn(CheckValue("occupancy", value, 0U)); - - OccupancyValue = value; - } - break; - case 2: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - shouldContinue = true; - break; - case 3: - VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); - { - uint8_t value; - VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value))); - } - break; - default: - LogErrorOnFailure(ContinueOnChipMainThread(CHIP_ERROR_INVALID_ARGUMENT)); - } - - if (shouldContinue) - { - ContinueOnChipMainThread(CHIP_NO_ERROR); - } - } - - CHIP_ERROR DoTestStep(uint16_t testIndex) override - { - using namespace chip::app::Clusters; - switch (testIndex) - { - case 0: { - LogStep(0, "Wait for the commissioned device to be retrieved"); - ListFreer listFreer; - chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value; - value.nodeId = mNodeId.HasValue() ? mNodeId.Value() : 305414945ULL; - return WaitForCommissionee(kIdentityAlpha, value); - } - case 1: { - LogStep(1, "Reads Occupancy attribute from DUT"); - VerifyOrDo(!ShouldSkip("A_OCCUPANCY"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); - return ReadAttribute(kIdentityAlpha, GetEndpoint(1), OccupancySensing::Id, OccupancySensing::Attributes::Occupancy::Id, - true, chip::NullOptional); - } - case 2: { - LogStep(2, "Operate on DUT to change the occupancy status"); - VerifyOrDo(!ShouldSkip("PICS_USER_PROMPT"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); - ListFreer listFreer; - chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; - value.message = chip::Span("Please enter 'y' for successgarbage: not in length on purpose", 28); - value.expectedValue.Emplace(); - value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); - return UserPrompt(kIdentityAlpha, value); - } - case 3: { - LogStep(3, "Reads back Occupancy attribute from DUT after few seconds"); - VerifyOrDo(!ShouldSkip("A_OCCUPANCY"), return ContinueOnChipMainThread(CHIP_NO_ERROR)); - return ReadAttribute(kIdentityAlpha, GetEndpoint(1), OccupancySensing::Id, OccupancySensing::Attributes::Occupancy::Id, - true, chip::NullOptional); - } - } - return CHIP_NO_ERROR; - } -}; - class Test_TC_OCC_2_3Suite : public TestCommand { public: @@ -87327,7 +87193,6 @@ void registerCommandsTests(Commands & commands, CredentialIssuerCommands * creds make_unique(credsIssuerConfig), make_unique(credsIssuerConfig), make_unique(credsIssuerConfig), - make_unique(credsIssuerConfig), make_unique(credsIssuerConfig), make_unique(credsIssuerConfig), make_unique(credsIssuerConfig), diff --git a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h index 473388849bb5b0..4d498a43c0ef49 100644 --- a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h +++ b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h @@ -2201,18 +2201,14 @@ class Test_TC_BOOL_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("AttributeList", [actualValue count], static_cast(6))); - VerifyOrReturn(CheckValue("", actualValue[0], 0UL)); - VerifyOrReturn(CheckValue("", actualValue[1], 65528UL)); - VerifyOrReturn(CheckValue("", actualValue[2], 65529UL)); - VerifyOrReturn(CheckValue("", actualValue[3], 65531UL)); - VerifyOrReturn(CheckValue("", actualValue[4], 65532UL)); - VerifyOrReturn(CheckValue("", actualValue[5], 65533UL)); - } - VerifyOrReturn(CheckConstraintType("attributeList", "", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65533UL)); + NextTest(); }]; @@ -2661,7 +2657,7 @@ class Test_TC_CC_1_1 : public TestCommandBridge { break; case 2: ChipLogProgress(chipTool, " ***** Test Step 2 : Read the global attribute constraints : FeatureMap\n"); - if (ShouldSkip("PICS_SKIP_SAMPLE_APP && (CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03)")) { + if (ShouldSkip("(CC.S.F00 || CC.S.F01 || CC.S.F02 || CC.S.F03)")) { NextTest(); return; } @@ -2782,12 +2778,10 @@ class Test_TC_CC_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("FeatureMap", actualValue, 1UL)); - } - VerifyOrReturn(CheckConstraintType("featureMap", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("featureMap", [value unsignedIntValue], 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("featureMap", [value unsignedIntValue], 31UL)); + NextTest(); }]; @@ -16943,21 +16937,17 @@ class Test_TC_DESC_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("AttributeList", [actualValue count], static_cast(9))); - VerifyOrReturn(CheckValue("", actualValue[0], 0UL)); - VerifyOrReturn(CheckValue("", actualValue[1], 1UL)); - VerifyOrReturn(CheckValue("", actualValue[2], 2UL)); - VerifyOrReturn(CheckValue("", actualValue[3], 3UL)); - VerifyOrReturn(CheckValue("", actualValue[4], 65528UL)); - VerifyOrReturn(CheckValue("", actualValue[5], 65529UL)); - VerifyOrReturn(CheckValue("", actualValue[6], 65531UL)); - VerifyOrReturn(CheckValue("", actualValue[7], 65532UL)); - VerifyOrReturn(CheckValue("", actualValue[8], 65533UL)); - } - VerifyOrReturn(CheckConstraintType("attributeList", "", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 1UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 2UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 3UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65533UL)); + NextTest(); }]; @@ -19833,19 +19823,15 @@ class Test_TC_I_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("AttributeList", [actualValue count], static_cast(7))); - VerifyOrReturn(CheckValue("", actualValue[0], 0UL)); - VerifyOrReturn(CheckValue("", actualValue[1], 1UL)); - VerifyOrReturn(CheckValue("", actualValue[2], 65528UL)); - VerifyOrReturn(CheckValue("", actualValue[3], 65529UL)); - VerifyOrReturn(CheckValue("", actualValue[4], 65531UL)); - VerifyOrReturn(CheckValue("", actualValue[5], 65532UL)); - VerifyOrReturn(CheckValue("", actualValue[6], 65533UL)); - } - VerifyOrReturn(CheckConstraintType("attributeList", "", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 1UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65533UL)); + NextTest(); }]; @@ -21395,10 +21381,6 @@ class Test_TC_ILL_2_1 : public TestCommandBridge { break; case 1: ChipLogProgress(chipTool, " ***** Test Step 1 : TH reads MeasuredValue attribute from DUT\n"); - if (ShouldSkip("PICS_SKIP_SAMPLE_APP")) { - NextTest(); - return; - } err = TestThReadsMeasuredValueAttributeFromDut_1(); break; case 2: @@ -21489,7 +21471,7 @@ class Test_TC_ILL_2_1 : public TestCommandBridge { if (value != nil) { VerifyOrReturn(CheckConstraintType("measuredValue", "", "uint16")); - VerifyOrReturn(CheckConstraintMinValue("measuredValue", [value unsignedShortValue], 1U)); + VerifyOrReturn(CheckConstraintMinValue("measuredValue", [value unsignedShortValue], 0U)); VerifyOrReturn(CheckConstraintMaxValue("measuredValue", [value unsignedShortValue], 65534U)); } @@ -25596,12 +25578,10 @@ class Test_TC_MC_1_2 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("FeatureMap", actualValue, 1UL)); - } - VerifyOrReturn(CheckConstraintType("featureMap", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("featureMap", [value unsignedIntValue], 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("featureMap", [value unsignedIntValue], 7UL)); + NextTest(); }]; @@ -26672,12 +26652,10 @@ class Test_TC_MC_1_6 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("FeatureMap", actualValue, 1UL)); - } - VerifyOrReturn(CheckConstraintType("featureMap", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("featureMap", [value unsignedIntValue], 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("featureMap", [value unsignedIntValue], 3UL)); + NextTest(); }]; @@ -26931,12 +26909,10 @@ class Test_TC_MC_1_7 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("FeatureMap", actualValue, 1UL)); - } - VerifyOrReturn(CheckConstraintType("featureMap", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("featureMap", [value unsignedIntValue], 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("featureMap", [value unsignedIntValue], 3UL)); + NextTest(); }]; @@ -27212,19 +27188,15 @@ class Test_TC_MC_1_8 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("AttributeList", [actualValue count], static_cast(7))); - VerifyOrReturn(CheckValue("", actualValue[0], 0UL)); - VerifyOrReturn(CheckValue("", actualValue[1], 1UL)); - VerifyOrReturn(CheckValue("", actualValue[2], 65528UL)); - VerifyOrReturn(CheckValue("", actualValue[3], 65529UL)); - VerifyOrReturn(CheckValue("", actualValue[4], 65531UL)); - VerifyOrReturn(CheckValue("", actualValue[5], 65532UL)); - VerifyOrReturn(CheckValue("", actualValue[6], 65533UL)); - } - VerifyOrReturn(CheckConstraintType("attributeList", "", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 1UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65533UL)); + NextTest(); }]; @@ -28032,12 +28004,10 @@ class Test_TC_MC_1_11 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("FeatureMap", actualValue, 1UL)); - } - VerifyOrReturn(CheckConstraintType("featureMap", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("featureMap", [value unsignedIntValue], 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("featureMap", [value unsignedIntValue], 3UL)); + NextTest(); }]; @@ -30182,44 +30152,54 @@ class Test_TC_MC_5_3 : public TestCommandBridge { err = TestWaitForTheCommissionedDeviceToBeRetrieved_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Reads the ChannelList attribute from the DUT\n"); - if (ShouldSkip("MC_CHANNEL.S.A0000")) { + ChipLogProgress(chipTool, + " ***** Test Step 1 : Reads the Lineup attribute from the DUT and Verify that the response contains a lineup info " + "object\n"); + if (ShouldSkip("MC_CHANNEL.S.A0001 && PICS_USER_PROMPT")) { NextTest(); return; } - err = TestReadsTheChannelListAttributeFromTheDut_1(); + err = TestReadsTheLineupAttributeFromTheDutAndVerifyThatTheResponseContainsALineupInfoObject_1(); break; case 2: - ChipLogProgress(chipTool, " ***** Test Step 2 : Reads the CurrentChannel attribute from the DUT\n"); - if (ShouldSkip("MC_CHANNEL.S.A0002")) { + ChipLogProgress(chipTool, " ***** Test Step 2 : Reads the ChannelList attribute from the DUT\n"); + if (ShouldSkip("MC_CHANNEL.S.A0000")) { NextTest(); return; } - err = TestReadsTheCurrentChannelAttributeFromTheDut_2(); + err = TestReadsTheChannelListAttributeFromTheDut_2(); break; case 3: - ChipLogProgress(chipTool, " ***** Test Step 3 : Sends a SkipChannel command to the DUT\n"); - if (ShouldSkip("MC_CHANNEL.S.C0003")) { + ChipLogProgress(chipTool, " ***** Test Step 3 : Reads the CurrentChannel attribute from the DUT\n"); + if (ShouldSkip("MC_CHANNEL.S.A0002")) { NextTest(); return; } - err = TestSendsASkipChannelCommandToTheDut_3(); + err = TestReadsTheCurrentChannelAttributeFromTheDut_3(); break; case 4: - ChipLogProgress(chipTool, " ***** Test Step 4 : Verify that the channel has changed on the device\n"); - if (ShouldSkip("PICS_USER_PROMPT")) { + ChipLogProgress(chipTool, " ***** Test Step 4 : Sends a SkipChannel command to the DUT\n"); + if (ShouldSkip("MC_CHANNEL.S.C0003")) { NextTest(); return; } - err = TestVerifyThatTheChannelHasChangedOnTheDevice_4(); + err = TestSendsASkipChannelCommandToTheDut_4(); break; case 5: - ChipLogProgress(chipTool, " ***** Test Step 5 : Reads the CurrentChannel attribute from the DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 5 : Verify that the channel has changed on the device\n"); + if (ShouldSkip("PICS_USER_PROMPT")) { + NextTest(); + return; + } + err = TestVerifyThatTheChannelHasChangedOnTheDevice_5(); + break; + case 6: + ChipLogProgress(chipTool, " ***** Test Step 6 : Reads the CurrentChannel attribute from the DUT\n"); if (ShouldSkip("MC_CHANNEL.S.A0002")) { NextTest(); return; } - err = TestReadsTheCurrentChannelAttributeFromTheDut_5(); + err = TestReadsTheCurrentChannelAttributeFromTheDut_6(); break; } @@ -30250,6 +30230,9 @@ class Test_TC_MC_5_3 : public TestCommandBridge { case 5: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 6: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -30263,7 +30246,7 @@ class Test_TC_MC_5_3 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 6; + const uint16_t mTestCount = 7; chip::Optional mNodeId; chip::Optional mCluster; @@ -30279,7 +30262,16 @@ class Test_TC_MC_5_3 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestReadsTheChannelListAttributeFromTheDut_1() + CHIP_ERROR TestReadsTheLineupAttributeFromTheDutAndVerifyThatTheResponseContainsALineupInfoObject_1() + { + chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; + value.message = chip::Span("Please enter 'y' for successgarbage: not in length on purpose", 28); + value.expectedValue.Emplace(); + value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); + return UserPrompt("alpha", value); + } + + CHIP_ERROR TestReadsTheChannelListAttributeFromTheDut_2() { MTRDevice * device = GetDevice("alpha"); MTRTestChannel * cluster = [[MTRTestChannel alloc] initWithDevice:device endpoint:1 queue:mCallbackQueue]; @@ -30297,7 +30289,7 @@ class Test_TC_MC_5_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestReadsTheCurrentChannelAttributeFromTheDut_2() + CHIP_ERROR TestReadsTheCurrentChannelAttributeFromTheDut_3() { MTRDevice * device = GetDevice("alpha"); MTRTestChannel * cluster = [[MTRTestChannel alloc] initWithDevice:device endpoint:1 queue:mCallbackQueue]; @@ -30320,7 +30312,7 @@ class Test_TC_MC_5_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestSendsASkipChannelCommandToTheDut_3() + CHIP_ERROR TestSendsASkipChannelCommandToTheDut_4() { MTRDevice * device = GetDevice("alpha"); MTRTestChannel * cluster = [[MTRTestChannel alloc] initWithDevice:device endpoint:1 queue:mCallbackQueue]; @@ -30340,7 +30332,7 @@ class Test_TC_MC_5_3 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestVerifyThatTheChannelHasChangedOnTheDevice_4() + CHIP_ERROR TestVerifyThatTheChannelHasChangedOnTheDevice_5() { chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; value.message @@ -30350,7 +30342,7 @@ class Test_TC_MC_5_3 : public TestCommandBridge { return UserPrompt("alpha", value); } - CHIP_ERROR TestReadsTheCurrentChannelAttributeFromTheDut_5() + CHIP_ERROR TestReadsTheCurrentChannelAttributeFromTheDut_6() { MTRDevice * device = GetDevice("alpha"); MTRTestChannel * cluster = [[MTRTestChannel alloc] initWithDevice:device endpoint:1 queue:mCallbackQueue]; @@ -35701,22 +35693,18 @@ class Test_TC_OO_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("AttributeList", [actualValue count], static_cast(10))); - VerifyOrReturn(CheckValue("", actualValue[0], 0UL)); - VerifyOrReturn(CheckValue("", actualValue[1], 16384UL)); - VerifyOrReturn(CheckValue("", actualValue[2], 16385UL)); - VerifyOrReturn(CheckValue("", actualValue[3], 16386UL)); - VerifyOrReturn(CheckValue("", actualValue[4], 16387UL)); - VerifyOrReturn(CheckValue("", actualValue[5], 65528UL)); - VerifyOrReturn(CheckValue("", actualValue[6], 65529UL)); - VerifyOrReturn(CheckValue("", actualValue[7], 65531UL)); - VerifyOrReturn(CheckValue("", actualValue[8], 65532UL)); - VerifyOrReturn(CheckValue("", actualValue[9], 65533UL)); - } - VerifyOrReturn(CheckConstraintType("attributeList", "", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 16384UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 16385UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 16386UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 16387UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65533UL)); + NextTest(); }]; @@ -43434,8 +43422,7 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { break; case 2: ChipLogProgress(chipTool, " ***** Test Step 2 : Read the optional global attribute constraints: FeatureMap\n"); - if (ShouldSkip( - "PICS_SKIP_SAMPLE_APP && ( TSTAT_HEAT || TSTAT_COOL || TSTAT_OCC || TSTAT_SCH || TSTAT_SB || TSTAT_AUTO )")) { + if (ShouldSkip("( TSTAT_HEAT || TSTAT_COOL || TSTAT_OCC || TSTAT_SCH || TSTAT_SB || TSTAT_AUTO )")) { NextTest(); return; } @@ -43554,12 +43541,10 @@ class Test_TC_TSTAT_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("FeatureMap", actualValue, 1UL)); - } - VerifyOrReturn(CheckConstraintType("featureMap", "", "map32")); + VerifyOrReturn(CheckConstraintMinValue("featureMap", [value unsignedIntValue], 0UL)); + VerifyOrReturn(CheckConstraintMaxValue("featureMap", [value unsignedIntValue], 63UL)); + NextTest(); }]; @@ -49851,18 +49836,14 @@ class Test_TC_ULABEL_1_1 : public TestCommandBridge { VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); - { - id actualValue = value; - VerifyOrReturn(CheckValue("AttributeList", [actualValue count], static_cast(6))); - VerifyOrReturn(CheckValue("", actualValue[0], 0UL)); - VerifyOrReturn(CheckValue("", actualValue[1], 65528UL)); - VerifyOrReturn(CheckValue("", actualValue[2], 65529UL)); - VerifyOrReturn(CheckValue("", actualValue[3], 65531UL)); - VerifyOrReturn(CheckValue("", actualValue[4], 65532UL)); - VerifyOrReturn(CheckValue("", actualValue[5], 65533UL)); - } - VerifyOrReturn(CheckConstraintType("attributeList", "", "list")); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 0UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65528UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65529UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65531UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65532UL)); + VerifyOrReturn(CheckConstraintContains("attributeList", value, 65533UL)); + NextTest(); }];