| # 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. |
| # Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default |
| |
| name: |
| 24.1.13. [TC-CADMIN-1.13] Open commissioning window twice on DUT using BCM |
| then ECM [DUT - Commissionee] |
| |
| PICS: |
| - CADMIN.S |
| - CADMIN.S.F00 |
| |
| config: |
| nodeId: 0x12344321 |
| timeout: 600 |
| nodeIdForDuplicateCommissioning: |
| type: node_id |
| defaultValue: 0x11 |
| nodeId2: |
| type: node_id |
| defaultValue: 0xCAFE |
| nodeId3: |
| type: node_id |
| defaultValue: 0xC00FEE |
| endpoint: 0 |
| discriminator: |
| type: int16u |
| defaultValue: 3840 |
| payload: |
| type: char_string |
| defaultValue: "MT:-24J0AFN00KA0648G00" |
| PakeVerifier: |
| type: octet_string |
| defaultValue: "hex:b96170aae803346884724fe9a3b287c30330c2a660375d17bb205a8cf1aecb350457f8ab79ee253ab6a8e46bb09e543ae422736de501e3db37d441fe344920d09548e4c18240630c4ff4913c53513839b7c07fcc0627a1b8573a149fcd1fa466cf" |
| |
| tests: |
| - label: "Precondition: Reset Devices to factory defaults" |
| PICS: PICS_SDK_CI_ONLY |
| cluster: "SystemCommands" |
| command: "FactoryReset" |
| |
| - label: "Precondition: Reset Devices to factory defaults" |
| verification: | |
| Not implemented in YAML |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| PICS: PICS_SKIP_SAMPLE_APP |
| arguments: |
| values: |
| - name: "message" |
| value: "Factory Reset the DUT and enter 'y' after success" |
| - name: "expectedValue" |
| value: "y" |
| |
| - label: "TH_CR1 starts a commissioning process with DUT_CE" |
| identity: "alpha" |
| cluster: "DelayCommands" |
| command: "WaitForCommissionee" |
| PICS: CADMIN.S |
| arguments: |
| values: |
| - name: "nodeId" |
| value: nodeId |
| |
| - label: "TH_CR1 opens a commissioning window on DUT_CE" |
| identity: "alpha" |
| cluster: "Administrator Commissioning" |
| command: "OpenBasicCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C01.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| |
| - label: "TH_CR1 reads WindowStatus attribute from DUT_CE" |
| cluster: "Administrator Commissioning" |
| command: "readAttribute" |
| attribute: "WindowStatus" |
| PICS: CADMIN.S.A0000 |
| response: |
| value: 2 |
| |
| #Need YAML support to save FabricId value from Fabrics list attribute |
| #Issue https://github.com/project-chip/connectedhomeip/issues/13029 |
| - label: |
| "TH_CR1 reads AdminFabricIndex attribute from DUT_CE and Verify TH_CR1 |
| reads the AdminFabricIndex value successfully and verify the value to |
| be the same as the Fabric Index of the Fabrics attribute list entry in |
| TH_CR1" |
| PICS: CADMIN.S.A0001 && PICS_USER_PROMPT |
| verification: | |
| On TH_CR1 send the below command |
| |
| ./chip-tool administratorcommissioning read admin-fabric-index 1 0 |
| |
| Verify on TH_CR1(chip-tool) log successfully reads the AdminFabricIndex |
| |
| [1658838491.852418][9309:9314] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0001 DataVersion: 2423106591 |
| [1658838491.852516][9309:9314] CHIP:TOO: AdminFabricIndex: 1 |
| [1658838491.852595][9309:9314] CHIP:EM: Sending Standalone Ack for MessageCounter:72459812 on exchange 35132i |
| |
| |
| Verify the AdminFabricIndex value above matches with the Fabric Index in the Fabrics list of TH_CR1 |
| |
| ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0 |
| |
| Verify 1 entry in the Fabrics list attributeOn TH_CR1(chip-tool) Log |
| |
| CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 3621507058 |
| [1649245801.244173][10091:10096] CHIP:TOO: Fabrics: 1 entries |
| [1649245801.244305][10091:10096] CHIP:TOO: [1]: { |
| [1649245801.244348][10091:10096] CHIP:TOO: RootPublicKey: 045541017FCEFD0D83963C9ED7F21380C6B789EB989B5D20DC318FAE92D60D0F685666505E9C4F86C49ADC71AB3A8B9B44FD43214CF9BE2B6D47DE01F28FE1544F |
| [1649245801.244400][10091:10096] CHIP:TOO: VendorId: 65521 |
| [1649245801.244431][10091:10096] CHIP:TOO: FabricId: 1 |
| [1649245801.244461][10091:10096] CHIP:TOO: NodeId: 1 |
| [1649245801.244491][10091:10096] CHIP:TOO: Label: |
| [1649245801.244521][10091:10096] CHIP:TOO: FabricIndex: 1 |
| [1649245801.244552][10091:10096] CHIP:TOO: } |
| [1649245801.244671][10091:10096] CHIP:EM: Sending Standalone Ack for MessageCounter:8407998 on exchange 12989i |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| arguments: |
| values: |
| - name: "message" |
| value: "Please enter 'y' for success" |
| - name: "expectedValue" |
| value: "y" |
| |
| #Issue https://github.com/project-chip/connectedhomeip/issues/13029 |
| - label: |
| "TH_CR1 reads AdminVendorId attribute from DUT_CE and Verify TH_CR1 |
| reads the AdminVendorId value successfully and verify this value to be |
| the same as the Vendor ID field of Fabrics attribute list entry in |
| TH_CR1" |
| PICS: CADMIN.S.A0002 && PICS_USER_PROMPT |
| verification: | |
| On TH_CR1 send the below command |
| |
| ./chip-tool administratorcommissioning read admin-vendor-id 1 0 |
| |
| Verify on TH_CR1(chip-tool) log successfully reads the AdminVendorId |
| |
| [1659096764.946339][11666:11671] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0002 DataVersion: 1299585105 |
| [1659096764.946483][11666:11671] CHIP:TOO: AdminVendorId: 65521 |
| [1659096764.946718][11666:11671] CHIP:EM: Sending Standalone Ack for MessageCounter:83111931 on exchange 26316i |
| |
| Verify the AdminVendorId value above matches with the VendorId in the Fabrics list of TH_CR1 |
| |
| ./chip-tool operationalcredentials read fabrics 1 0 --fabric-filtered 0 |
| |
| Verify 1 entry in the Fabrics list attributeOn TH_CR1(chip-tool) Log |
| |
| CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_0001 DataVersion: 3621507058 |
| [1649245801.244173][10091:10096] CHIP:TOO: Fabrics: 1 entries |
| [1649245801.244305][10091:10096] CHIP:TOO: [1]: { |
| [1649245801.244348][10091:10096] CHIP:TOO: RootPublicKey: 045541017FCEFD0D83963C9ED7F21380C6B789EB989B5D20DC318FAE92D60D0F685666505E9C4F86C49ADC71AB3A8B9B44FD43214CF9BE2B6D47DE01F28FE1544F |
| [1649245801.244400][10091:10096] CHIP:TOO: VendorId: 65521 |
| [1649245801.244431][10091:10096] CHIP:TOO: FabricId: 1 |
| [1649245801.244461][10091:10096] CHIP:TOO: NodeId: 1 |
| [1649245801.244491][10091:10096] CHIP:TOO: Label: |
| [1649245801.244521][10091:10096] CHIP:TOO: FabricIndex: 1 |
| [1649245801.244552][10091:10096] CHIP:TOO: } |
| [1649245801.244671][10091:10096] CHIP:EM: Sending Standalone Ack for MessageCounter:8407998 on exchange 12989i |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| arguments: |
| values: |
| - name: "message" |
| value: "Please enter 'y' for success" |
| - name: "expectedValue" |
| value: "y" |
| |
| #Check for DNS-SD advertisement CM is not possible in YAML |
| - label: "Verify that the DNS-SD advertisement shows CM=1" |
| verification: | |
| On TH_CR1 send the below command |
| grl@grl-ThinkPad-L480:~/2nd_cntrl/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matterc._udp |
| + wlp5s0 IPv6 C326228BDB082BF4 _matterc._udp local |
| + wlp5s0 IPv6 7B6545A75C5330BE _matterc._udp local |
| = wlp5s0 IPv6 7B6545A75C5330BE _matterc._udp local |
| hostname = [E45F010F27530000.local] |
| address = [fe80::e65f:1ff:fe0f:2755] |
| port = [5540] |
| txt = ["PI=" "PH=33" "CM=1" "D=3841" "T=1" "CRA=300" "CRI=5000" "VP=65521+32769"] |
| grl@grl-ThinkPad-L480:~/2nd_cntrl/connectedhomeip/examples/chip-tool/out/debug$ |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| PICS: PICS_SKIP_SAMPLE_APP |
| arguments: |
| values: |
| - name: "message" |
| value: "enter 'y' after success" |
| - name: "expectedValue" |
| value: "y" |
| |
| - label: "TH_CR3 starts a commissioning process with DUT_CE" |
| identity: "gamma" |
| cluster: "CommissionerCommands" |
| command: "PairWithCode" |
| arguments: |
| values: |
| - name: "nodeId" |
| value: nodeId3 |
| - name: "payload" |
| value: payload |
| |
| - label: "DUT_CE is commissioned to TH_CR3 on Fabric ID3 with Node ID3" |
| identity: "gamma" |
| cluster: "DelayCommands" |
| command: "WaitForCommissionee" |
| PICS: CADMIN.S |
| arguments: |
| values: |
| - name: "nodeId" |
| value: nodeId3 |
| |
| - label: "TH_CR1 opens a commissioning window on DUT_CE" |
| identity: "alpha" |
| cluster: "Administrator Commissioning" |
| command: "OpenBasicCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C01.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| |
| - label: "TH_CR2 starts a commissioning process with DUT_CE" |
| identity: "beta" |
| cluster: "CommissionerCommands" |
| command: "PairWithCode" |
| arguments: |
| values: |
| - name: "nodeId" |
| value: nodeId2 |
| - name: "payload" |
| value: payload |
| |
| - label: "DUT_CE is commissioned to TH_CR2 on Fabric ID2 with Node ID2" |
| identity: "beta" |
| cluster: "DelayCommands" |
| command: "WaitForCommissionee" |
| arguments: |
| values: |
| - name: "nodeId" |
| value: nodeId2 |
| |
| - label: "TH_CR1 opens a commissioning window on DUT_CE" |
| identity: "alpha" |
| cluster: "Administrator Commissioning" |
| command: "OpenBasicCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C01.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| |
| - label: "TH_CR1 opens a 2nd commissioning window on DUT_CE" |
| identity: "alpha" |
| cluster: "Administrator Commissioning" |
| command: "OpenCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C00.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| - name: "PAKEPasscodeVerifier" |
| value: PakeVerifier |
| - name: "Discriminator" |
| value: discriminator |
| - name: "Iterations" |
| value: 1000 |
| - name: "Salt" |
| value: "SPAKE2P Key Salt" |
| response: |
| error: FAILURE |
| clusterError: 2 |
| |
| - label: "TH_CR1 reads the list of Fabrics on DUT_CE" |
| identity: "alpha" |
| command: "readAttribute" |
| cluster: "Operational Credentials" |
| attribute: "Fabrics" |
| fabricFiltered: false |
| PICS: OPCREDS.S.A0001 |
| response: |
| value: |
| [ |
| { Label: "", NodeID: nodeId }, |
| { Label: "", NodeID: nodeId2 }, |
| { Label: "", NodeID: nodeId3 }, |
| ] |
| constraints: |
| type: list |
| |
| - label: "Wait for the expiration of PIXIT.CADMIN.CwDuration seconds" |
| cluster: "DelayCommands" |
| command: "WaitForMs" |
| arguments: |
| values: |
| - name: "ms" |
| value: 180000 |
| |
| - label: "TH_CR1 re-opens new commissioning window on DUT_CE using ECM" |
| identity: "alpha" |
| cluster: "Administrator Commissioning" |
| command: "OpenCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C00.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| - name: "PAKEPasscodeVerifier" |
| value: PakeVerifier |
| - name: "Discriminator" |
| value: discriminator |
| - name: "Iterations" |
| value: 1000 |
| - name: "Salt" |
| value: "SPAKE2P Key Salt" |
| |
| - label: "TH_CR1 reads WindowStatus attribute from DUT_CE" |
| cluster: "Administrator Commissioning" |
| command: "readAttribute" |
| attribute: "WindowStatus" |
| PICS: CADMIN.S.A0000 |
| response: |
| value: 1 |
| |
| #Check for DNS-SD advertisement CM is not possible in YAML |
| - label: "Verify that the DNS-SD advertisement shows CM=2" |
| verification: | |
| On TH_CR1 send the below command |
| grl@grl-ThinkPad-L480:~/2nd_cntrl/connectedhomeip/examples/chip-tool/out/debug$ avahi-browse -rt _matterc._udp |
| + wlp5s0 IPv6 C326228BDB082BF4 _matterc._udp local |
| + wlp5s0 IPv6 7B6545A75C5330BE _matterc._udp local |
| = wlp5s0 IPv6 7B6545A75C5330BE _matterc._udp local |
| hostname = [E45F010F27530000.local] |
| address = [fe80::e65f:1ff:fe0f:2755] |
| port = [5540] |
| txt = ["PI=" "PH=33" "CM=1" "D=3841" "T=1" "CRA=300" "CRI=5000" "VP=65521+32769"] |
| = wlp5s0 IPv6 C326228BDB082BF4 _matterc._udp local |
| hostname = [E45F010F27530000.local] |
| address = [fe80::e65f:1ff:fe0f:2755] |
| port = [5540] |
| txt = ["PI=" "PH=36" "CM=2" "D=3840" "T=1" "CRA=300" "CRI=5000" "VP=65521+32769"] |
| grl@grl-ThinkPad-L480:~/2nd_cntrl/connectedhomeip/examples/chip-tool/out/debug$ |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| PICS: PICS_SKIP_SAMPLE_APP |
| arguments: |
| values: |
| - name: "message" |
| value: "enter 'y' after success" |
| - name: "expectedValue" |
| value: "y" |
| |
| - label: "TH_CR3 opens a 2nd commissioning window on DUT_CE" |
| identity: "gamma" |
| cluster: "Administrator Commissioning" |
| command: "OpenCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C00.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| - name: "PAKEPasscodeVerifier" |
| value: PakeVerifier |
| - name: "Discriminator" |
| value: discriminator |
| - name: "Iterations" |
| value: 1000 |
| - name: "Salt" |
| value: "SPAKE2P Key Salt" |
| response: |
| error: FAILURE |
| clusterError: 2 |
| |
| - label: "TH_CR1 reads the list of Fabrics on DUT_CE" |
| identity: "alpha" |
| command: "readAttribute" |
| cluster: "Operational Credentials" |
| attribute: "Fabrics" |
| fabricFiltered: false |
| PICS: OPCREDS.S.A0001 |
| response: |
| value: |
| [ |
| { Label: "", NodeID: nodeId }, |
| { Label: "", NodeID: nodeId2 }, |
| { Label: "", NodeID: nodeId3 }, |
| ] |
| constraints: |
| type: list |
| |
| - label: "Wait for the expiration of PIXIT_COMM_WIN seconds" |
| cluster: "DelayCommands" |
| command: "WaitForMs" |
| arguments: |
| values: |
| - name: "ms" |
| value: 180000 |
| |
| - label: "TH_CR1 opens a new commissioning window on DUT_CE" |
| identity: "alpha" |
| cluster: "Administrator Commissioning" |
| command: "OpenCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C00.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| - name: "PAKEPasscodeVerifier" |
| value: PakeVerifier |
| - name: "Discriminator" |
| value: discriminator |
| - name: "Iterations" |
| value: 1000 |
| - name: "Salt" |
| value: "SPAKE2P Key Salt" |
| |
| - label: "TH_CR2 opens a 2nd commissioning window on DUT_CE using ECM" |
| identity: "beta" |
| cluster: "Administrator Commissioning" |
| command: "OpenCommissioningWindow" |
| timedInteractionTimeoutMs: 10000 |
| PICS: CADMIN.S.C00.Rsp |
| arguments: |
| values: |
| - name: "CommissioningTimeout" |
| value: 180 |
| - name: "PAKEPasscodeVerifier" |
| value: PakeVerifier |
| - name: "Discriminator" |
| value: discriminator |
| - name: "Iterations" |
| value: 1000 |
| - name: "Salt" |
| value: "SPAKE2P Key Salt" |
| response: |
| error: FAILURE |
| clusterError: 2 |
| |
| - label: "Wait for the expiration of PIXIT.CADMIN.CwDuration seconds" |
| cluster: "DelayCommands" |
| command: "WaitForMs" |
| arguments: |
| values: |
| - name: "ms" |
| value: 180000 |
| |
| - label: "TH_CR1 reads WindowStatus attribute from DUT_CE" |
| cluster: "Administrator Commissioning" |
| command: "readAttribute" |
| attribute: "WindowStatus" |
| PICS: CADMIN.S.A0000 |
| response: |
| value: 0 |
| |
| - label: "TH_CR1 reads AdminFabricIndex attribute from DUT_CE" |
| cluster: "Administrator Commissioning" |
| command: "readAttribute" |
| attribute: "AdminFabricIndex" |
| PICS: CADMIN.S.A0001 |
| response: |
| value: null |
| |
| - label: "TH_CR1 reads AdminVendorId attribute from DUT_CE" |
| cluster: "Administrator Commissioning" |
| command: "readAttribute" |
| attribute: "AdminVendorId" |
| PICS: CADMIN.S.A0002 |
| response: |
| value: null |