# 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.16. [TC-CNET-4.18] [Thread] Verification for attributes check
    [DUT-Client]

PICS:
    - CNET.C.F01

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

tests:
    - label: "Note"
      verification: |
          Chip-tool command used below are an example to verify the  DUT as client test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
      disabled: true

    - label: "Commission TH and DUT on Thread setup"
      verification: |

      disabled: true

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

          Verify "MaxNetworks response" on the TH(All-cluster-app) Log:

          D: 7993601 [SC]Allocated SecureSession (0x20003680) - waiting for Sigma1 msg
          D: 7993608 [EM]Retransmitting MessageCounter:53368032 on exchange 5643r Send Cnt 1
          I: 7993615 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53368032 to 0x0000000000000000c
          I: 7993630 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:231115534 on exchar
          D: 7993640 [EM]Handling via exchange: 5644r, Delegate: 0x200070ec
          D: 7993647 [IM]Received Read request
          D: 7993651 [DMG]IM RH moving to [GeneratingReports]
          D: 7993657 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 7993666 [DMG]<RE:Run> Cluster 31, Attribute 0 is dirty
          D: 7993671 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0000 (expanded=0)
          D: 7993682 [DMG]<RE> Sending report (payload has 36 bytes)...
          I: 7993688 [IN]Prepared secure message 0x200048b4 to 0x00000000000
      disabled: true

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

          Verify "Networks response" on the TH(All-cluster-app) Log:

          D: 8065181 [SC]Allocated SecureSession (0x20003738) - waiting for Sigma1 msg
          D: 8065188 [EM]Retransmitting MessageCounter:53368036 on exchange 57159r Send Cnt 1
          I: 8065196 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53368036 to 0x0000000000000000c
          I: 8065213 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:15008713 on exchanr
          D: 8065223 [EM]Handling via exchange: 57160r, Delegate: 0x200070ec
          D: 8065229 [IM]Received Read request
          D: 8065233 [DMG]IM RH moving to [GeneratingReports]
          D: 8065240 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8065248 [DMG]<RE:Run> Cluster 31, Attribute 1 is dirty
          D: 8065254 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0001 (expanded=0)
          D: 8065265 [DMG]<RE> Sending report (payload has 77 bytes)...
      disabled: true

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

          Verify  "ScanMaxTimeSeconds response" on the TH(All-cluster-app) Log:

          D: 8108702 [SC]Allocated SecureSession (0x200037f0) - waiting for Sigma1 msg
          I: 8108710 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:194637583 on exchar
          D: 8108720 [EM]Handling via exchange: 42632r, Delegate: 0x200070ec
          D: 8108726 [IM]Received Read request
          D: 8108730 [DMG]IM RH moving to [GeneratingReports]
          D: 8108735 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8108743 [DMG]<RE:Run> Cluster 31, Attribute 2 is dirty
          D: 8108749 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0002 (expanded=0)
          D: 8108758 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

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

          Verify "ConnectMaxTimeSeconds response" on the TH(All-cluster-app) Log:

          D: 8145477 [SC]Allocated SecureSession (0x20002c70) - waiting for Sigma1 msg
          I: 8145484 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:134704639 on exchar
          D: 8145495 [EM]Handling via exchange: 57526r, Delegate: 0x200070ec
          D: 8145502 [IM]Received Read request
          D: 8145506 [DMG]IM RH moving to [GeneratingReports]
          D: 8145511 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8145520 [DMG]<RE:Run> Cluster 31, Attribute 3 is dirty
          D: 8145525 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0003 (expanded=0)
          D: 8145534 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

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

          Verify "InterfaceEnabled response" on the TH(All-cluster-app) Log:

          D: 8179717 [SC]Allocated SecureSession (0x20002de0) - waiting for Sigma1 msg
          I: 8179725 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:158532673 on exchar
          D: 8179735 [EM]Handling via exchange: 13106r, Delegate: 0x200070ec
          D: 8179741 [IM]Received Read request
          D: 8179745 [DMG]IM RH moving to [GeneratingReports]
          D: 8179750 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8179759 [DMG]<RE:Run> Cluster 31, Attribute 4 is dirty
          D: 8179764 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0004 (expanded=0)
          D: 8179775 [DMG]<RE> Sending report (payload has 35 bytes)...
      disabled: true

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


          Verify "LastNetworkingStatus response" on the TH(All-cluster-app) Log:

          D: 8428403 [SC]Allocated SecureSession (0x20002d28) - waiting for Sigma1 msg
          I: 8428410 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:135181543 on exchar
          D: 8428421 [EM]Handling via exchange: 29697r, Delegate: 0x200070ec
          D: 8428427 [IM]Received Read request
          D: 8428431 [DMG]IM RH moving to [GeneratingReports]
          D: 8428435 [EM]Retransmitting MessageCounter:53368052 on exchange 29696r Send Cnt 1
          I: 8428443 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53368052 to 0x0000000000000000c
          D: 8428459 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8428468 [DMG]<RE:Run> Cluster 31, Attribute 5 is dirty
          D: 8428473 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0005 (expanded=0)
          D: 8428483 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

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


          Verify "LastNetworkID response" on the TH(All-cluster-app) Log:

          D: 8469179 [SC]Allocated SecureSession (0x20002e98) - waiting for Sigma1 msg
          I: 8469187 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:91003604 on exchanr
          D: 8469197 [EM]Handling via exchange: 63120r, Delegate: 0x200070ec
          D: 8469203 [IM]Received Read request
          D: 8469207 [DMG]IM RH moving to [GeneratingReports]
          D: 8469212 [EM]Retransmitting MessageCounter:53368056 on exchange 63119r Send Cnt 1
          I: 8469219 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53368056 to 0x0000000000000000c
          D: 8469233 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8469242 [DMG]<RE:Run> Cluster 31, Attribute 6 is dirty
          D: 8469248 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0006 (expanded=0)
          D: 8469258 [DMG]<RE> Sending report (payload has 44 bytes)...
      disabled: true

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


          Verify "LastConnectErrorValue response" on the TH(All-cluster-app) Log:

          D: 8729020 [SC]Allocated SecureSession (0x20002f50) - waiting for Sigma1 msg
          I: 8729028 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:249692114 on exchar
          D: 8729038 [EM]Handling via exchange: 17068r, Delegate: 0x200070ec
          D: 8729044 [IM]Received Read request
          D: 8729048 [DMG]IM RH moving to [GeneratingReports]
          D: 8729053 [EM]Retransmitting MessageCounter:53368060 on exchange 17067r Send Cnt 1
          I: 8729060 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53368060 to 0x0000000000000000c
          D: 8729074 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 8729083 [DMG]<RE:Run> Cluster 31, Attribute 7 is dirty
          D: 8729089 [DMG]Reading attribute: Cluster=0x0000_0031 Endpoint=0 AttributeId=0x0000_0007 (expanded=0)
          D: 8729100 [DMG]<RE> Sending report (payload has 35 bytes)...
      disabled: true
