# 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: 50.3.1. [TC-DGTHREAD-3.1] Attributes [DUT- Client]

PICS:
    - DGTHREAD.C

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

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

    - label: "Commission DUT to TH"
      verification: |

      disabled: true

    - label: "DUT reads Channel attribute value from TH"
      PICS: DGTHREAD.C.A0000
      verification: |
          ./chip-tool threadnetworkdiagnostics read channel 54 0

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


          D: 499352 [EM]Handling via exchange: 37813r, Delegate: 0x200070ec
          D: 499358 [IM]Received Read request
          D: 499362 [DMG]IM RH moving to [GeneratingReports]
          D: 499367 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 499375 [DMG]<RE:Run> Cluster 35, Attribute 0 is dirty
          D: 499381 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0000 (expanded=0)
          exchanr
          D: 499492 [EM]Found matching exchange: 37813r, Delegate: (nil)
          D: 499498 [EM]Rxd Ack; Removing MessageCounter:30700790 from Retrans Table on exchange 37813r
          D: 499506 [EM]Removed CHIP MessageCounter:30700790 from RetransTable on exchange 37813r
      disabled: true

    - label: "DUT reads RoutingRole attribute value from TH"
      PICS: DGTHREAD.C.A0001
      verification: |
          ./chip-tool threadnetworkdiagnostics read routing-role 54 0

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

          D: 857084 [EM]Handling via exchange: 46068r, Delegate: 0x200070ec
          D: 857090 [IM]Received Read request
          D: 857094 [DMG]IM RH moving to [GeneratingReports]
          D: 857099 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 857108 [DMG]<RE:Run> Cluster 35, Attribute 1 is dirty
          D: 857113 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0001 (expanded=0)
          D: 857122 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads NetworkName attribute value from TH."
      PICS: DGTHREAD.C.A0002
      verification: |
          ./chip-tool threadnetworkdiagnostics read network-name 54 0

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

          D: 906029 [EM]Handling via exchange: 28293r, Delegate: 0x200070ec
          D: 906035 [IM]Received Read request
          D: 906039 [DMG]IM RH moving to [GeneratingReports]
          D: 906043 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 906052 [DMG]<RE:Run> Cluster 35, Attribute 2 is dirty
          D: 906057 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0002 (expanded=0)
          D: 906066 [DMG]<RE> Sending report (payload has 51 bytes)...
      disabled: true

    - label: "DUT reads PanId attribute value from TH."
      PICS: DGTHREAD.C.A0003
      verification: |
          ./chip-tool threadnetworkdiagnostics read pan-id 54 0

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

          D: 967006 [EM]Handling via exchange: 44794r, Delegate: 0x200070ec
          D: 967011 [IM]Received Read request
          D: 967015 [DMG]IM RH moving to [GeneratingReports]
          D: 967020 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 967029 [DMG]<RE:Run> Cluster 35, Attribute 3 is dirty
          D: 967034 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0003 (expanded=0)
          D: 967043 [DMG]<RE> Sending report (payload has 37 bytes)...
      disabled: true

    - label: "DUT reads ExtendedPanId attribute value from TH."
      PICS: DGTHREAD.C.A0004
      verification: |
          ./chip-tool threadnetworkdiagnostics read extended-pan-id 54 0

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

          D: 992402 [EM]Handling via exchange: 49565r, Delegate: 0x200070ec
          D: 992409 [IM]Received Read request
          D: 992413 [DMG]IM RH moving to [GeneratingReports]
          D: 992418 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 992427 [DMG]<RE:Run> Cluster 35, Attribute 4 is dirty
          D: 992432 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0004 (expanded=0)
          D: 992441 [DMG]<RE> Sending report (payload has 43 bytes)...
      disabled: true

    - label: "DUT reads MeshLocalPrefix attribute value from TH."
      PICS: DGTHREAD.C.A0005
      verification: |
          ./chip-tool threadnetworkdiagnostics read mesh-local-prefix 54 0

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

          D: 1037614 [EM]Handling via exchange: 42980r, Delegate: 0x200070ec
          D: 1037620 [IM]Received Read request
          D: 1037624 [DMG]IM RH moving to [GeneratingReports]
          D: 1037628 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1037637 [DMG]<RE:Run> Cluster 35, Attribute 5 is dirty
          D: 1037642 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0005 (expanded=0)
          D: 1037652 [DMG]<RE> Sending report (payload has 45 bytes)...
      disabled: true

    - label: "DUT reads OverrunCount attribute value from TH."
      PICS: DGTHREAD.C.A0006
      verification: |
          ./chip-tool threadnetworkdiagnostics read overrun-count 54 0

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

          D: 1085229 [SC]Allocated SecureSession (0x20003680) - waiting for Sigma1 msg
          I: 1085236 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:86023668 on exchanr
          D: 1085246 [EM]Handling via exchange: 16079r, Delegate: 0x200070ec
          D: 1085252 [IM]Received Read request
          D: 1085256 [DMG]IM RH moving to [GeneratingReports]
          D: 1085261 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1085270 [DMG]<RE:Run> Cluster 35, Attribute 6 is dirty
          D: 1085275 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0006 (expanded=0)
          D: 1085284 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads NeighborTable attribute value from TH."
      PICS: DGTHREAD.C.A0007
      verification: |
          ./chip-tool threadnetworkdiagnostics read neighbor-table 54 0

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

          D: 1133597 [SC]Allocated SecureSession (0x20003738) - waiting for Sigma1 msg
          I: 1133606 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:213814779 on exchar
          D: 1133616 [EM]Handling via exchange: 57703r, Delegate: 0x200070ec
          D: 1133622 [IM]Received Read request
          D: 1133626 [DMG]IM RH moving to [GeneratingReports]
          D: 1133631 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1133640 [DMG]<RE:Run> Cluster 35, Attribute 7 is dirty
          D: 1133645 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0007 (expanded=0)
          D: 1133654 [DMG]<RE> Sending report (payload has 110 bytes)..
      disabled: true

    - label: "DUT reads RouteTable attribute value from TH."
      PICS: DGTHREAD.C.A0008
      verification: |
          ./chip-tool threadnetworkdiagnostics read route-table 54 0

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

          D: 1193349 [SC]Allocated SecureSession (0x200037f0) - waiting for Sigma1 msg
          I: 1193357 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:137272867 on exchar
          D: 1193367 [EM]Handling via exchange: 5101r, Delegate: 0x200070ec
          D: 1193372 [IM]Received Read request
          D: 1193376 [DMG]IM RH moving to [GeneratingReports]
          D: 1193381 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1193390 [DMG]<RE:Run> Cluster 35, Attribute 8 is dirty
          D: 1193395 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0008 (expanded=0)
          D: 1193405 [DMG]<RE> Sending report (payload has 100 bytes)...
      disabled: true

    - label: "DUT reads PartitionId attribute value from TH"
      PICS: DGTHREAD.C.A0009
      verification: |
          ./chip-tool threadnetworkdiagnostics read partition-id 54 0

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

          D: 1251223 [SC]Allocated SecureSession (0x20002c70) - waiting for Sigma1 msg
          I: 1251230 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:191202632 on exchar
          D: 1251241 [EM]Handling via exchange: 25875r, Delegate: 0x200070ec
          D: 1251247 [IM]Received Read request
          D: 1251251 [DMG]IM RH moving to [GeneratingReports]
          D: 1251256 [EM]Retransmitting MessageCounter:53367772 on exchange 25874r Send Cnt 1
          I: 1251265 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367772 to 0x0000000000000000c
          D: 1251279 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1251288 [DMG]<RE:Run> Cluster 35, Attribute 9 is dirty
          D: 1251294 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0009 (expanded=0)
          D: 1251303 [DMG]<RE> Sending report (payload has 39 bytes)...
      disabled: true

    - label: "DUT reads Weighting attribute value from TH"
      PICS: DGTHREAD.C.A000a
      verification: |
          ./chip-tool threadnetworkdiagnostics read weighting 54 0

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

          D: 1299900 [SC]Allocated SecureSession (0x20002de0) - waiting for Sigma1 msg
          I: 1299907 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:55560128 on exchanr
          D: 1299917 [EM]Handling via exchange: 45722r, Delegate: 0x200070ec
          D: 1299923 [IM]Received Read request
          D: 1299927 [DMG]IM RH moving to [GeneratingReports]
          D: 1299932 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1299941 [DMG]<RE:Run> Cluster 35, Attribute a is dirty
          D: 1299946 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_000A (expanded=0)
          D: 1299955 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads DataVersion attribute value from TH"
      PICS: DGTHREAD.C.A000b
      verification: |
          ./chip-tool threadnetworkdiagnostics read data-version 54 0

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

          I: 1354333 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367780 to 0x0000000000000000c
          I: 1354350 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:157453720 on exchar
          D: 1354362 [EM]Handling via exchange: 38823r, Delegate: 0x200070ec
          D: 1354368 [IM]Received Read request
          D: 1354372 [DMG]IM RH moving to [GeneratingReports]
          D: 1354376 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1354385 [DMG]<RE:Run> Cluster 35, Attribute b is dirty
          D: 1354390 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_000B (expanded=0)
          D: 1354400 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads StableDataVersion attribute value from TH"
      PICS: DGTHREAD.C.A000c
      verification: |
          ./chip-tool threadnetworkdiagnostics read stable-data-version 54 0

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


          I: 1392842 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367784 to 0x0000000000000000c
          I: 1392857 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:43531416 on exchanr
          D: 1392867 [EM]Handling via exchange: 51957r, Delegate: 0x200070ec
          D: 1392875 [IM]Received Read request
          D: 1392879 [DMG]IM RH moving to [GeneratingReports]
          D: 1392884 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1392894 [DMG]<RE:Run> Cluster 35, Attribute c is dirty
          D: 1392900 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_000C (expanded=0)
          D: 1392909 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads LeaderRouterId attribute value from TH"
      PICS: DGTHREAD.C.A000d
      verification: |
          ./chip-tool threadnetworkdiagnostics read leader-router-id 54 0

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


          D: 1455932 [SC]Allocated SecureSession (0x20002f50) - waiting for Sigma1 msg
          I: 1455940 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:149451326 on exchar
          D: 1455950 [EM]Handling via exchange: 39274r, Delegate: 0x200070ec
          D: 1455956 [IM]Received Read request
          D: 1455960 [DMG]IM RH moving to [GeneratingReports]
          D: 1455965 [EM]Retransmitting MessageCounter:53367788 on exchange 39273r Send Cnt 1
          I: 1455972 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367788 to 0x0000000000000000c
          D: 1455988 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1455997 [DMG]<RE:Run> Cluster 35, Attribute d is dirty
          D: 1456002 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_000D (expanded=0)
          D: 1456013 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads DetachedRoleCount attribute value from TH"
      PICS: DGTHREAD.C.A000e
      verification: |
          ./chip-tool threadnetworkdiagnostics read detached-role-count 54 0

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

          I: 1532319 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367792 to 0x0000000000000000c
          I: 1532333 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:268029320 on exchar
          D: 1532344 [EM]Handling via exchange: 16217r, Delegate: 0x200070ec
          D: 1532350 [IM]Received Read request
          D: 1532354 [DMG]IM RH moving to [GeneratingReports]
          D: 1532361 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1532371 [DMG]<RE:Run> Cluster 35, Attribute e is dirty
          D: 1532376 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_000E (expanded=0)
          D: 1532385 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads ChildRoleCount attribute value from TH"
      PICS: DGTHREAD.C.A000f
      verification: |
          ./chip-tool threadnetworkdiagnostics read child-role-count 54 0

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

          D: 1566935 [SC]Allocated SecureSession (0x200030c0) - waiting for Sigma1 msg
          I: 1566943 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:48367315 on exchanr
          D: 1566953 [EM]Handling via exchange: 7022r, Delegate: 0x200070ec
          D: 1566958 [IM]Received Read request
          D: 1566962 [DMG]IM RH moving to [GeneratingReports]
          D: 1566967 [EM]Retransmitting MessageCounter:53367796 on exchange 7021r Send Cnt 1
          I: 1566975 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367796 to 0x0000000000000000c
          D: 1566989 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1566998 [DMG]<RE:Run> Cluster 35, Attribute f is dirty
          D: 1567005 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_000F (expanded=0)
          D: 1567014 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads RouterRoleCount attribute value from TH"
      PICS: DGTHREAD.C.A0010
      verification: |
          ./chip-tool threadnetworkdiagnostics read router-role-count 54 0

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

          D: 1600012 [SC]Allocated SecureSession (0x20003178) - waiting for Sigma1 msg
          I: 1600020 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:78525212 on exchanr
          D: 1600030 [EM]Handling via exchange: 10230r, Delegate: 0x200070ec
          D: 1600036 [IM]Received Read request
          D: 1600040 [DMG]IM RH moving to [GeneratingReports]
          D: 1600045 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1600054 [DMG]<RE:Run> Cluster 35, Attribute 10 is dirty
          D: 1600059 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0010 (expanded=0)
          D: 1600068 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads LeaderRoleCount attribute value from TH"
      PICS: DGTHREAD.C.A0011
      verification: |
          ./chip-tool threadnetworkdiagnostics read leader-role-count 54 0

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

          I: 1712400 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367804 to 0x0000000000000000c
          I: 1712415 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:173936026 on exchar
          D: 1712425 [EM]Handling via exchange: 56738r, Delegate: 0x200070ec
          D: 1712431 [IM]Received Read request
          D: 1712436 [DMG]IM RH moving to [GeneratingReports]
          D: 1712440 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1712452 [DMG]<RE:Run> Cluster 35, Attribute 11 is dirty
          D: 1712459 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0011 (expanded=0)
          D: 1712468 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads AttachAttemptCount attribute value from TH"
      PICS: DGTHREAD.C.A0012
      verification: |
          ./chip-tool threadnetworkdiagnostics read attach-attempt-count 54 0

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

          D: 1762338 [SC]Allocated SecureSession (0x200032e8) - waiting for Sigma1 msg
          I: 1762346 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:45359373 on exchanr
          D: 1762356 [EM]Handling via exchange: 7899r, Delegate: 0x200070ec
          D: 1762362 [IM]Received Read request
          D: 1762366 [DMG]IM RH moving to [GeneratingReports]
          D: 1762371 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1762381 [DMG]<RE:Run> Cluster 35, Attribute 12 is dirty
          D: 1762386 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0012 (expanded=0)
          D: 1762395 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads PartitionIdChangeCount attribute value from TH"
      PICS: DGTHREAD.C.A0013
      verification: |
          ./chip-tool threadnetworkdiagnostics read partition-id-change-count 54 0

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

          D: 1988080 [SC]Allocated SecureSession (0x200033a0) - waiting for Sigma1 msg
          I: 1988087 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:211482637 on exchar
          D: 1988097 [EM]Handling via exchange: 39932r, Delegate: 0x200070ec
          D: 1988103 [IM]Received Read request
          D: 1988107 [DMG]IM RH moving to [GeneratingReports]
          D: 1988112 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 1988123 [DMG]<RE:Run> Cluster 35, Attribute 13 is dirty
          D: 1988128 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0013 (expanded=0)
          D: 1988137 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label:
          "DUT reads BetterPartitionAttachAttemptCount attribute value from TH"
      PICS: DGTHREAD.C.A0014
      verification: |
          ./chip-tool threadnetworkdiagnostics read better-partition-attach-attempt-count 54 0

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

          D: 2082976 [SC]Allocated SecureSession (0x20003458) - waiting for Sigma1 msg
          I: 2082984 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:221024802 on exchar
          D: 2082994 [EM]Handling via exchange: 41742r, Delegate: 0x200070ec
          D: 2083000 [IM]Received Read request
          D: 2083004 [DMG]IM RH moving to [GeneratingReports]
          D: 2083009 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2083017 [DMG]<RE:Run> Cluster 35, Attribute 14 is dirty
          D: 2083023 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0014 (expanded=0)
          D: 2083032 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads ParentChangeCount attribute value from TH"
      PICS: DGTHREAD.C.A0015
      verification: |
          ./chip-tool threadnetworkdiagnostics read parent-change-count 54 0

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

          D: 2167609 [SC]Allocated SecureSession (0x20003510) - waiting for Sigma1 msg
          I: 2167617 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:197446435 on exchar
          D: 2167627 [EM]Handling via exchange: 13205r, Delegate: 0x200070ec
          D: 2167633 [IM]Received Read request
          D: 2167637 [DMG]IM RH moving to [GeneratingReports]
          D: 2167642 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2167651 [DMG]<RE:Run> Cluster 35, Attribute 15 is dirty
          D: 2167656 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0015 (expanded=0)
          D: 2167665 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads ActiveTimestamp attribute value from TH"
      PICS: DGTHREAD.C.A0038
      verification: |
          ./chip-tool threadnetworkdiagnostics read active-timestamp 54 0

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

          I: 2257044 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367824 to 0x0000000000000000c
          I: 2257059 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:197064524 on exchar
          D: 2257070 [EM]Handling via exchange: 61923r, Delegate: 0x200070ec
          D: 2257077 [IM]Received Read request
          D: 2257083 [DMG]IM RH moving to [GeneratingReports]
          D: 2257088 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2257097 [DMG]<RE:Run> Cluster 35, Attribute 38 is dirty
          D: 2257102 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0038 (expanded=0)
          D: 2257113 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads PendingTimestamp attribute value from TH"
      PICS: DGTHREAD.C.A0039
      verification: |
          ./chip-tool threadnetworkdiagnostics read pending-timestamp 54 0

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

          D: 2368307 [SC]Allocated SecureSession (0x20003680) - waiting for Sigma1 msg
          I: 2368315 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:262013622 on exchar
          D: 2368325 [EM]Handling via exchange: 17994r, Delegate: 0x200070ec
          D: 2368331 [IM]Received Read request
          D: 2368336 [DMG]IM RH moving to [GeneratingReports]
          D: 2368341 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2368350 [DMG]<RE:Run> Cluster 35, Attribute 39 is dirty
          D: 2368355 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_0039 (expanded=0)
          D: 2368367 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads Delay attribute value from TH"
      PICS: DGTHREAD.C.A003a
      verification: |
          ./chip-tool threadnetworkdiagnostics read delay 54 0

          Verify "delay response" on the TH(All-cluster-app) Log:
           D: 2395612 [SC]Allocated SecureSession (0x20003738) - waiting for Sigma1 msg
          I: 2395619 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:102223401 on exchar
          D: 2395629 [EM]Handling via exchange: 39913r, Delegate: 0x200070ec
          D: 2395635 [IM]Received Read request
          D: 2395639 [DMG]IM RH moving to [GeneratingReports]
          D: 2395644 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2395653 [DMG]<RE:Run> Cluster 35, Attribute 3a is dirty
          D: 2395658 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_003A (expanded=0)
          D: 2395670 [DMG]<RE> Sending report (payload has 36 bytes)...
      disabled: true

    - label: "DUT reads SecurityPolicy attribute value from TH"
      PICS: DGTHREAD.C.A003b
      verification: |
          ./chip-tool threadnetworkdiagnostics read security-policy 54 0

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

          D: 2430403 [SC]Allocated SecureSession (0x200037f0) - waiting for Sigma1 msg
          I: 2430410 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:23336336 on exchanr
          D: 2430420 [EM]Handling via exchange: 57373r, Delegate: 0x200070ec
          D: 2430426 [IM]Received Read request
          D: 2430430 [DMG]IM RH moving to [GeneratingReports]
          D: 2430437 [EM]Retransmitting MessageCounter:53367836 on exchange 57372r Send Cnt 1
          I: 2430445 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367836 to 0x0000000000000000c
          D: 2430459 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2430467 [DMG]<RE:Run> Cluster 35, Attribute 3b is dirty
          D: 2430473 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_003B (expanded=0)
          D: 2430486 [DMG]<RE> Sending report (payload has 44 bytes)...
      disabled: true

    - label: "DUT reads ChannelPage0Mask attribute value from TH"
      PICS: DGTHREAD.C.A003c
      verification: |
          ./chip-tool threadnetworkdiagnostics read channel-page0mask 54 0

          Verify "channel-page0mask" on the TH(All-cluster-app) Log:

          I: 2464057 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367840 to 0x0000000000000000c
          I: 2464071 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:147354356 on exchar
          D: 2464082 [EM]Handling via exchange: 1863r, Delegate: 0x200070ec
          D: 2464088 [IM]Received Read request
          D: 2464092 [DMG]IM RH moving to [GeneratingReports]
          D: 2464099 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2464107 [DMG]<RE:Run> Cluster 35, Attribute 3c is dirty
          D: 2464113 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_003C (expanded=0)
          D: 2464124 [DMG]<RE> Sending report (payload has 40 bytes)...
      disabled: true

    - label: "DUT reads OperationalDatasetComponents attribute from TH"
      PICS: DGTHREAD.C.A003d
      verification: |
          ./chip-tool threadnetworkdiagnostics read operational-dataset-components 54 0

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

          D: 2559492 [SC]Allocated SecureSession (0x20002de0) - waiting for Sigma1 msg
          D: 2559499 [EM]Retransmitting MessageCounter:53367844 on exchange 11177r Send Cnt 1
          I: 2559507 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367844 to 0x0000000000000000c
          I: 2559522 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:72374798 on exchanr
          D: 2559532 [EM]Handling via exchange: 11178r, Delegate: 0x200070ec
          D: 2559540 [IM]Received Read request
          D: 2559544 [DMG]IM RH moving to [GeneratingReports]
          D: 2559550 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2559559 [DMG]<RE:Run> Cluster 35, Attribute 3d is dirty
          D: 2559564 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_003D (expanded=0)
          D: 2559576 [DMG]<RE> Sending report (payload has 60 bytes)...
      disabled: true

    - label: "DUT reads ActiveNetworkFaults attribute value from TH"
      PICS: DGTHREAD.C.A003e
      verification: |
          ./chip-tool threadnetworkdiagnostics read active-network-faults-list 54 0

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

          D: 2608568 [SC]Allocated SecureSession (0x20002d28) - waiting for Sigma1 msg
          D: 2608575 [EM]Retransmitting MessageCounter:53367848 on exchange 40328r Send Cnt 1
          I: 2608583 [IN]Sending unauthenticated msg 0x2000489c with MessageCounter:53367848 to 0x0000000000000000c
          I: 2608598 [EM]Received message of type 0x2 with protocolId (0, 1) and MessageCounter:83976838 on exchanr
          D: 2608608 [EM]Handling via exchange: 40329r, Delegate: 0x200070ec
          D: 2608614 [IM]Received Read request
          D: 2608618 [DMG]IM RH moving to [GeneratingReports]
          D: 2608625 [DMG]Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          D: 2608633 [DMG]<RE:Run> Cluster 35, Attribute 3e is dirty
          D: 2608639 [DMG]Reading attribute: Cluster=0x0000_0035 Endpoint=0 AttributeId=0x0000_003E (expanded=0)
          D: 2608650 [DMG]<RE> Sending report (payload has 148 bytes)...
      disabled: true
