| # Copyright (c) 2023 Project CHIP Authors |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| name: |
| 12.4.2. [TC-CNET-4.2] [Thread] Verification for attributes check |
| [DUT-Server] |
| |
| PICS: |
| - CNET.S.F01 |
| |
| config: |
| nodeId: 0x12344321 |
| cluster: "Network Commissioning" |
| #PIXIT.CNET.ENDPOINT_THREAD |
| endpoint: 0 |
| PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET: |
| type: octet_string |
| defaultValue: "hex:1111111122222222" |
| |
| tests: |
| - label: "Step 1: Factory reset the DUT" |
| verification: | |
| Reset Devices to factory defaults |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| PICS: PICS_USER_PROMPT |
| arguments: |
| values: |
| - name: "message" |
| value: "Factory Reset the DUT and enter 'y' after success" |
| - name: "expectedValue" |
| value: "y" |
| |
| #Issue: https://github.com/project-chip/connectedhomeip/issues/30196 |
| - label: "Step 2: Commission TH and DUT on Thread network" |
| verification: | |
| ./chip-tool pairing ble-thread 0x12344321 <operationalDataset> <setup-pin-code> <discriminator> |
| |
| [1698660637.937566][6429:6431] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0005 |
| [1698660637.937644][6429:6431] CHIP:CTL: Received CommissioningComplete response, errorCode=0 |
| [1698660637.937705][6429:6431] CHIP:CTL: Successfully finished commissioning step 'SendComplete' |
| [1698660637.937750][6429:6431] CHIP:CTL: Commissioning stage next step: 'SendComplete' -> 'Cleanup' |
| [1698660637.937812][6429:6431] CHIP:CTL: Performing next commissioning step 'Cleanup' |
| [1698660637.937863][6429:6431] CHIP:DIS: Closing all BLE connections |
| [1698660637.937911][6429:6431] CHIP:IN: Clearing BLE pending packets. |
| [1698660637.938582][6429:6431] CHIP:BLE: Auto-closing end point's BLE connection. |
| [1698660637.938645][6429:6431] CHIP:DL: Closing BLE GATT connection (con 0xffff9c034bb0) |
| [1698660637.938805][6429:6430] CHIP:DL: BluezDisconnect peer=F7:D4:24:D2:4A:1F |
| [1698660638.365208][6429:6431] CHIP:IN: SecureSession[0xffff9400f900]: MarkForEviction Type:1 LSID:62220 |
| [1698660638.365311][6429:6431] CHIP:SC: SecureSession[0xffff9400f900, LSID:62220]: State change 'kActive' --> 'kPendingEviction' |
| [1698660638.365440][6429:6431] CHIP:IN: SecureSession[0xffff9400f900]: Released - Type:1 LSID:62220 |
| [1698660638.365529][6429:6431] CHIP:CTL: Successfully finished commissioning step 'Cleanup' |
| [1698660638.365598][6429:6431] CHIP:TOO: Device commissioning completed with success |
| [1698660638.365873][6429:6431] CHIP:DMG: ICR moving to [AwaitingDe] |
| cluster: "LogCommands" |
| command: "UserPrompt" |
| PICS: PICS_USER_PROMPT |
| arguments: |
| values: |
| - name: "message" |
| value: enter 'y' after successfull Commission" |
| - name: "expectedValue" |
| value: "y" |
| |
| - label: |
| "Step 3: TH reads Descriptor Cluster from the DUT with EP0 TH reads |
| ServerList from the DUT" |
| cluster: "Descriptor" |
| command: "readAttribute" |
| attribute: "ServerList" |
| response: |
| constraints: |
| type: list |
| contains: [49] |
| |
| - label: "Step 4: TH reads FeatureMap attribute from the DUT" |
| command: "readAttribute" |
| attribute: "FeatureMap" |
| response: |
| value: 2 |
| constraints: |
| type: bitmap32 |
| |
| - label: |
| "Step 5 & 6: TH reads the MaxNetworks attribute from the DUT. TH saves |
| the MaxNetworks attribute value as 'MaxNetworksValue' for future use" |
| PICS: CNET.S.A0000 |
| command: "readAttribute" |
| attribute: "MaxNetworks" |
| response: |
| saveAs: MaxNetworksValue |
| constraints: |
| type: int8u |
| minValue: 1 |
| maxValue: 255 |
| |
| - label: "Step 7: TH reads the Networks attribute list from the DUT" |
| PICS: CNET.S.A0001 |
| command: "readAttribute" |
| attribute: "Networks" |
| response: |
| constraints: |
| contains: |
| [ |
| { |
| NetworkID: PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET, |
| Connected: true, |
| }, |
| ] |
| |
| - label: "Step 8: TH reads ScanMaxTimeSeconds attribute from the DUT" |
| PICS: CNET.S.A0002 |
| command: "readAttribute" |
| attribute: "ScanMaxTimeSeconds" |
| response: |
| constraints: |
| type: int8u |
| minValue: 1 |
| maxValue: 255 |
| |
| - label: "Step 9: TH reads ConnectMaxTimeSeconds attribute from the DUT" |
| PICS: CNET.S.A0003 |
| command: "readAttribute" |
| attribute: "ConnectMaxTimeSeconds" |
| response: |
| constraints: |
| type: int8u |
| minValue: 1 |
| maxValue: 255 |
| |
| - label: "Step 10: TH reads InterfaceEnabled attribute from the DUT" |
| PICS: CNET.S.A0004 |
| command: "readAttribute" |
| attribute: "InterfaceEnabled" |
| response: |
| value: true |
| constraints: |
| type: boolean |
| |
| - label: "Step 11: TH reads LastNetworkingStatus attribute from the DUT" |
| PICS: CNET.S.A0005 |
| command: "readAttribute" |
| attribute: "LastNetworkingStatus" |
| response: |
| value: 0 |
| constraints: |
| type: NetworkCommissioningStatusEnum |
| |
| - label: |
| "Step 12a: TH reads the LastNetworkID attribute from the DUT. TH reads |
| the Networks attribute from the DUT" |
| PICS: CNET.S.A0006 |
| command: "readAttribute" |
| attribute: "LastNetworkID" |
| response: |
| value: PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET |
| constraints: |
| type: octet_string |
| minLength: 1 |
| maxLength: 32 |
| |
| - label: "Step 12b: TH reads the Networks attribute list from the DUT" |
| PICS: CNET.S.A0001 |
| command: "readAttribute" |
| attribute: "Networks" |
| response: |
| constraints: |
| contains: |
| [ |
| { |
| NetworkID: PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET, |
| Connected: true, |
| }, |
| ] |
| |
| - label: |
| "Step 13: TH reads the LastConnectErrorValue attribute from the DUT" |
| PICS: CNET.S.A0007 |
| command: "readAttribute" |
| attribute: "LastConnectErrorValue" |
| response: |
| value: null |
| constraints: |
| type: int32s |
| |
| #Possibilites if Bit 4 (IsSynchronizedSleepyEndDeviceCapable) is only set if bit 2 (IsSleepyEndDeviceCapable) is also set expects value 20 |
| #Verify that Bit 0 (IsBorderRouterCapable) is only set if bit 3 (IsFullThreadDevice) is also set expected value 9 |
| #Verify that Bit 1 (IsRouterCapable) is only set if bit 3 (IsFullThreadDevice) is also set expected value 10 |
| #So the possibilites of value here are in the range of 0-20 expected value as per test-plan [0, 4, 8, 9, 10, 16, 20] |
| - label: |
| "Step 14: TH reads the SupportedThreadFeatures attribute from the DUT" |
| PICS: CNET.S.A0009 |
| command: "readAttribute" |
| attribute: "SupportedThreadFeatures" |
| response: |
| constraints: |
| type: bitmap16 |
| anyOf: [0, 4, 8, 9, 10, 16, 20] |
| |
| - label: "Step 15:TH reads the ThreadVersion attribute from the DUT" |
| PICS: CNET.S.A000A |
| command: "readAttribute" |
| attribute: "ThreadVersion" |
| response: |
| constraints: |
| type: int16u |
| minValue: 4 |