# 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:
    12.4.1. [TC-CNET-4.1] [Wi-Fi] Verification for attributes check [DUT-Server]

PICS:
    - CNET.S.F01

config:
    nodeId: 0x12344321
    cluster: "Basic"
    endpoint: 0

tests:
    - label: "Factory reset the DUT"
      verification: |
          verification step to be updated.
      disabled: true

    - label: "Commmission TH and DUT on Thread setup"
      verification: |
          verification step to be updated.
      disabled: true

    - label:
          "TH reads Descriptor Cluster from the DUT with EP0 TH reads ServerList
          from the DUT"
      verification: |
          ./chip-tool descriptor read server-list 54 0

          Verify the "ServerList" in the TH(chip-tool) Log:

          [1645772414.100694][3827:3832] CHIP:DMG:         SuppressResponse = true,
          [1645772414.100718][3827:3832] CHIP:DMG:         InteractionModelRevision = 1
          [1645772414.100740][3827:3832] CHIP:DMG: }
          [1645772414.102134][3827:3832] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0001DataVersion: 3883095917
          [1645772414.102248][3827:3832] CHIP:TOO:   server list: 21 entries
          [1645772414.102291][3827:3832] CHIP:TOO:     [1]: 4
          [1645772414.102317][3827:3832] CHIP:TOO:     [2]: 29
          [1645772414.102341][3827:3832] CHIP:TOO:     [3]: 31
          [1645772414.102366][3827:3832] CHIP:TOO:     [4]: 40
          [1645772414.102389][3827:3832] CHIP:TOO:     [5]: 42
          [1645772414.102413][3827:3832] CHIP:TOO:     [6]: 43
          [1645772414.102436][3827:3832] CHIP:TOO:     [7]: 44
          [1645772414.102459][3827:3832] CHIP:TOO:     [8]: 48
          [1645772414.102482][3827:3832] CHIP:TOO:     [9]: 49
          [1645772414.102506][3827:3832] CHIP:TOO:     [10]: 50
          [1645772414.102529][3827:3832] CHIP:TOO:     [11]: 51
          [1645772414.102552][3827:3832] CHIP:TOO:     [12]: 52
          [1645772414.102575][3827:3832] CHIP:TOO:     [13]: 53
          [1645772414.102598][3827:3832] CHIP:TOO:     [14]: 54
          [1645772414.102622][3827:3832] CHIP:TOO:     [15]: 55
          [1645772414.102645][3827:3832] CHIP:TOO:     [16]: 59
          [1645772414.102669][3827:3832] CHIP:TOO:     [17]: 60
          [1645772414.102692][3827:3832] CHIP:TOO:     [18]: 62
          [1645772414.102715][3827:3832] CHIP:TOO:     [19]: 63
          [1645772414.102738][3827:3832] CHIP:TOO:     [20]: 64
          [1645772414.102761][3827:3832] CHIP:TOO:     [21]: 65
          [1645772414.102925][3827:3832] CHIP:EM: Sending Standalone Ack for MessageCounter:15329672 on exchange 6140i
      disabled: true

    - label: "TH reads FeatureMap attribute from the DUT"
      verification: |
          ./chip-tool networkcommissioning read feature-map 54 0

          Verify the "FeatureMap: 2" in  the TH(chip-tool) Log:

          [1645772204.502545][3809:3814] CHIP:DMG:         SuppressResponse = true,
          [1645772204.502608][3809:3814] CHIP:DMG:         InteractionModelRevision = 1
          [1645772204.502683][3809:3814] CHIP:DMG: }
          [1645772204.503195][3809:3814] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_FFFCDataVersion: 92121563
          [1645772204.503398][3809:3814] CHIP:TOO:   FeatureMap: 2
          [1645772204.503556][3809:3814] CHIP:EM: Sending Standalone Ack for MessageCounter:5988746 on exchange 46140i
      disabled: true

    - label: "TH reads the MaxNetworks attribute from the DUT"
      PICS: CNET.S.A0000
      verification: |
          ./chip-tool networkcommissioning read max-networks 54 0

          Verify "MaxNetworks" on the TH(chip-tool) Log:

          [1645772548.257320][3837:3842] CHIP:DMG:         SuppressResponse = true,
          [1645772548.257381][3837:3842] CHIP:DMG:         InteractionModelRevision = 1
          [1645772548.257437][3837:3842] CHIP:DMG: }
          [1645772548.257735][3837:3842] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0000DataVersion: 92121563
          [1645772548.257878][3837:3842] CHIP:TOO:   MaxNetworks: 1
          [1645772548.258032][3837:3842] CHIP:EM: Sending Standalone Ack for MessageCounter:7388528 on exchange 41499i
      disabled: true

    - label:
          "TH saves the MaxNetworks attribute value as MaxNetworksValue for
          future use"
      verification: |
          TH1 saves the MaxNetworks attribute value
      disabled: true

    - label: "TH reads the Networks attribute list from the DUT"
      PICS: CNET.S.A0001
      verification: |
          ./chip-tool networkcommissioning read networks 54 0

          Verify "Networks entries and its status" on the TH(chip-tool) Log:

          [1645772651.445097][3856:3861] CHIP:DMG:         SuppressResponse = true,
          [1645772651.445149][3856:3861] CHIP:DMG:         InteractionModelRevision = 1
          [1645772651.445209][3856:3861] CHIP:DMG: }
          [1645772651.445754][3856:3861] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0001DataVersion: 92121563
          [1645772651.445875][3856:3861] CHIP:TOO:   Networks: 1 entries
          [1645772651.446057][3856:3861] CHIP:TOO:     [1]: {
          [1645772651.446120][3856:3861] CHIP:TOO:       NetworkID: 1111161622222211
          [1645772651.446173][3856:3861] CHIP:TOO:       Connected: TRUE
          [1645772651.446228][3856:3861] CHIP:TOO:      }
          [1645772651.446431][3856:3861] CHIP:EM: Sending Standalone Ack for MessageCounter:12695576 on exchange 11133i
      disabled: true

    - label: "TH reads ScanMaxTimeSeconds attribute from the DUT"
      PICS: CNET.S.A0002
      verification: |
          ./chip-tool networkcommissioning read scan-max-time-seconds 54 0

          Verify  "ScanMaxTimeSeconds" on the TH(chip-tool) Log:

          [1645772820.740795][3867:3872] CHIP:DMG:         SuppressResponse = true,
          [1645772820.740855][3867:3872] CHIP:DMG:         InteractionModelRevision = 1
          [1645772820.740903][3867:3872] CHIP:DMG: }
          [1645772820.741209][3867:3872] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0002DataVersion: 92121563
          [1645772820.741357][3867:3872] CHIP:TOO:   ScanMaxTimeSeconds: 10
          [1645772820.741512][3867:3872] CHIP:EM: Sending Standalone Ack for MessageCounter:10309775 on exchange 55305i
      disabled: true

    - label: "TH reads ConnectMaxTimeSeconds Attribute from the DUT"
      PICS: CNET.S.A0003
      verification: |
          ./chip-tool networkcommissioning read connect-max-time-seconds 54 0

          Verify "ConnectMaxTimeSeconds" on the TH(chip-tool) Log:

          [1645772901.118880][3879:3884] CHIP:DMG:         SuppressResponse = true,
          [1645772901.119008][3879:3884] CHIP:DMG:         InteractionModelRevision = 1
          [1645772901.119141][3879:3884] CHIP:DMG: }
          [1645772901.119684][3879:3884] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0003DataVersion: 92121563
          [1645772901.119885][3879:3884] CHIP:TOO:   ConnectMaxTimeSeconds: 20
          [1645772901.120100][3879:3884] CHIP:EM: Sending Standalone Ack for MessageCounter:11917538 on exchange 4188
      disabled: true

    - label: "TH reads InterfaceEnabled attribute from the DUT"
      PICS: CNET.S.A0004
      verification: |
          ./chip-tool networkcommissioning read interface-enabled 54 0

          Verify "InterfaceEnabled" on the TH(chip-tool) Log:

          [1645772984.653996][3895:3900] CHIP:DMG:         SuppressResponse = true,
          [1645772984.654043][3895:3900] CHIP:DMG:         InteractionModelRevision = 1
          [1645772984.654084][3895:3900] CHIP:DMG: }
          [1645772984.654310][3895:3900] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0004DataVersion: 92121563
          [1645772984.654388][3895:3900] CHIP:TOO:   InterfaceEnabled: TRUE
          [1645772984.654530][3895:3900] CHIP:EM: Sending Standalone Ack for MessageCounter:14026610 on exchange 33717i
      disabled: true

    - label: "TH reads LastNetworkingStatus attribute from the DUT"
      PICS: CNET.S.A0005
      verification: |
          ./chip-tool networkcommissioning read last-networking-status 54 0


          Verify "LastNetworkingStatus" on the TH(chip-tool) Log:

          [1645773078.930516][3905:3910] CHIP:DMG:         SuppressResponse = true,
          [1645773078.930579][3905:3910] CHIP:DMG:         InteractionModelRevision = 1
          [1645773078.930635][3905:3910] CHIP:DMG: }
          [1645773078.930943][3905:3910] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0005DataVersion: 92121563
          [1645773078.931067][3905:3910] CHIP:TOO:   LastNetworkingStatus: 0
          [1645773078.931217][3905:3910] CHIP:EM: Sending Standalone Ack for MessageCounter:16576011 on exchange 44187i
      disabled: true

    - label:
          "TH reads the LastNetworkID attribute from the DUT TH reads the
          Networks attribute from the DUT"
      PICS: CNET.S.A0006
      verification: |
          ./chip-tool networkcommissioning read last-network-id 54 0


          Verify "LastNetworkID" on the TH(chip-tool) Log:

          [1645773167.178501][3913:3918] CHIP:DMG:         SuppressResponse = true,
          [1645773167.178561][3913:3918] CHIP:DMG:         InteractionModelRevision = 1
          [1645773167.178618][3913:3918] CHIP:DMG: }
          [1645773167.178919][3913:3918] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0006DataVersion: 92121563
          [1645773167.182241][3913:3918] CHIP:TOO:   LastNetworkID: 1111161622222211
          [1645773167.182422][3913:3918] CHIP:EM: Sending Standalone Ack for MessageCounter:2029571 on exchange 18566i
      disabled: true

    - label: "TH reads the LastConnectErrorValue attribute from the DUT"
      PICS: CNET.S.A0007
      verification: |
          ./chip-tool networkcommissioning read last-connect-error-value 54 0

          Verify "LastConnectErrorValue" on the TH(chip-tool) Log:

          [1645773318.752774][3938:3943] CHIP:DMG:         SuppressResponse = true,
          [1645773318.752861][3938:3943] CHIP:DMG:         InteractionModelRevision = 1
          [1645773318.753043][3938:3943] CHIP:DMG: }
          [1645773318.753543][3938:3943] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0031 Attribute 0x0000_0007DataVersion: 92121563
          [1645773318.753724][3938:3943] CHIP:TOO:   LastConnectErrorValue: 0
          [1645773318.753985][3938:3943] CHIP:EM: Sending Standalone Ack for MessageCounter:15303417 on exchange 41937i
      disabled: true
