# 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: 3.3.1. [TC-DGSW-3.1] Attributes [{DUT_Client}]

PICS:
    - DGSW.C

config:
    nodeId: 0x12344321
    cluster: "Basic"
    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 TH to DUT"
      verification: |

      disabled: true

    - label: "DUT reads a list of ThreadMetrics struct attribute from TH."
      PICS: DGSW.C.A0000
      verification: |
          ./chip-tool softwarediagnostics read thread-metrics 1 0

          Verify the thread-metrics attribute has entries with ThreadMetrics Struct on TH(all-clusters-app) Log:

          [1659971993.647303][3458:3458] CHIP:IM: Received Read request
          [1659971993.647386][3458:3458] CHIP:DMG: ReadRequestMessage =
          [1659971993.647414][3458:3458] CHIP:DMG: {
          [1659971993.647436][3458:3458] CHIP:DMG: 	AttributePathIBs =
          [1659971993.647462][3458:3458] CHIP:DMG: 	[
          [1659971993.647486][3458:3458] CHIP:DMG: 		AttributePathIB =
          [1659971993.647514][3458:3458] CHIP:DMG: 		{
          [1659971993.647542][3458:3458] CHIP:DMG: 			Endpoint = 0x0,
          [1659971993.647578][3458:3458] CHIP:DMG: 			Cluster = 0x34,
          [1659971993.647607][3458:3458] CHIP:DMG: 			Attribute = 0x0000_0000,
          [1659971993.647634][3458:3458] CHIP:DMG: 		}
          [1659971993.647663][3458:3458] CHIP:DMG:
          [1659971993.647687][3458:3458] CHIP:DMG: 	],
          [1659971993.647716][3458:3458] CHIP:DMG:
          [1659971993.647742][3458:3458] CHIP:DMG: 	isFabricFiltered = true,
          [1659971993.647767][3458:3458] CHIP:DMG: 	InteractionModelRevision = 1
          [1659971993.647791][3458:3458] CHIP:DMG: },
          [1659971993.647866][3458:3458] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1659971993.647967][3458:3458] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1659971993.647998][3458:3458] CHIP:DMG: <RE:Run> Cluster 34, Attribute 0 is dirty
          [1659971993.648020][3458:3458] CHIP:DMG: Reading attribute: Cluster=0x0000_0034 Endpoint=0 AttributeId=0x0000_0000 (expanded=0)
          [1659971993.648047][3458:3458] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0034 e=0 p=v
          [1659971993.648080][3458:3458] CHIP:DMG: AccessControl: allowed
      disabled: true

    - label: "DUT reads an attribute value from TH."
      PICS: DGSW.C.A0001
      verification: |
          ./chip-tool softwarediagnostics read current-heap-free 1 0

          Verify the value of CurrentHeapFree is in range uint64 on TH(all-clusters-app) Log:

          [1659972026.540043][3458:3458] CHIP:IM: Received Read request
          [1659972026.540208][3458:3458] CHIP:DMG: ReadRequestMessage =
          [1659972026.540273][3458:3458] CHIP:DMG: {
          [1659972026.540325][3458:3458] CHIP:DMG:         AttributePathIBs =
          [1659972026.540387][3458:3458] CHIP:DMG:         [
          [1659972026.540444][3458:3458] CHIP:DMG:                 AttributePathIB =
          [1659972026.540510][3458:3458] CHIP:DMG:                 {
          [1659972026.540577][3458:3458] CHIP:DMG:                         Endpoint = 0x0,
          [1659972026.540661][3458:3458] CHIP:DMG:                         Cluster = 0x34,
          [1659972026.540737][3458:3458] CHIP:DMG:                         Attribute = 0x0000_0001,
          [1659972026.540810][3458:3458] CHIP:DMG:                 }
          [1659972026.540878][3458:3458] CHIP:DMG:
          [1659972026.540939][3458:3458] CHIP:DMG:         ],
          [1659972026.541006][3458:3458] CHIP:DMG:
          [1659972026.541118][3458:3458] CHIP:DMG:         isFabricFiltered = true,
          [1659972026.541182][3458:3458] CHIP:DMG:         InteractionModelRevision = 1
          [1659972026.541239][3458:3458] CHIP:DMG: },
          [1659972026.541397][3458:3458] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1659972026.541584][3458:3458] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1659972026.541651][3458:3458] CHIP:DMG: <RE:Run> Cluster 34, Attribute 1 is dirty
          [1659972026.541702][3458:3458] CHIP:DMG: Reading attribute: Cluster=0x0000_0034 Endpoint=0 AttributeId=0x0000_0001 (expanded=0)
          [1659972026.541773][3458:3458] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0034 e=0 p=v
          [1659972026.541845][3458:3458] CHIP:DMG: AccessControl: allowed
      disabled: true

    - label: "DUT reads an attribute value from TH."
      PICS: DGSW.C.A0002
      verification: |
          ./chip-tool  softwarediagnostics  read current-heap-used 1 0

          Verify the value of CurrentHeapUsed is in range uint64 on TH(all-clusters-app) Log:

          [1659972063.411625][3458:3458] CHIP:IM: Received Read request
          [1659972063.411702][3458:3458] CHIP:DMG: ReadRequestMessage =
          [1659972063.411740][3458:3458] CHIP:DMG: {
          [1659972063.411763][3458:3458] CHIP:DMG:         AttributePathIBs =
          [1659972063.411789][3458:3458] CHIP:DMG:         [
          [1659972063.411822][3458:3458] CHIP:DMG:                 AttributePathIB =
          [1659972063.411852][3458:3458] CHIP:DMG:                 {
          [1659972063.411892][3458:3458] CHIP:DMG:                         Endpoint = 0x0,
          [1659972063.411932][3458:3458] CHIP:DMG:                         Cluster = 0x34,
          [1659972063.411964][3458:3458] CHIP:DMG:                         Attribute = 0x0000_0002,
          [1659972063.412003][3458:3458] CHIP:DMG:                 }
          [1659972063.412032][3458:3458] CHIP:DMG:
          [1659972063.412069][3458:3458] CHIP:DMG:         ],
          [1659972063.412106][3458:3458] CHIP:DMG:
          [1659972063.412133][3458:3458] CHIP:DMG:         isFabricFiltered = true,
          [1659972063.412165][3458:3458] CHIP:DMG:         InteractionModelRevision = 1
          [1659972063.412191][3458:3458] CHIP:DMG: },
          [1659972063.412273][3458:3458] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1659972063.412375][3458:3458] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1659972063.412403][3458:3458] CHIP:DMG: <RE:Run> Cluster 34, Attribute 2 is dirty
          [1659972063.412424][3458:3458] CHIP:DMG: Reading attribute: Cluster=0x0000_0034 Endpoint=0 AttributeId=0x0000_0002 (expanded=0)
          [1659972063.412451][3458:3458] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0034 e=0 p=v
          [1659972063.412483][3458:3458] CHIP:DMG: AccessControl: allowed
      disabled: true

    - label: "DUT reads an attribute value from TH."
      PICS: DGSW.C.A0003
      verification: |
          ./chip-tool softwarediagnostics read current-heap-high-watermark 1 0

          Verify the value of CurrentHeapHighWatermark is in range uint64 on TH(all-clusters-app) Log:

          [1659972088.497642][3458:3458] CHIP:IM: Received Read request
          [1659972088.497747][3458:3458] CHIP:DMG: ReadRequestMessage =
          [1659972088.497787][3458:3458] CHIP:DMG: {
          [1659972088.497816][3458:3458] CHIP:DMG:         AttributePathIBs =
          [1659972088.497854][3458:3458] CHIP:DMG:         [
          [1659972088.497889][3458:3458] CHIP:DMG:                 AttributePathIB =
          [1659972088.497928][3458:3458] CHIP:DMG:                 {
          [1659972088.497970][3458:3458] CHIP:DMG:                         Endpoint = 0x0,
          [1659972088.498016][3458:3458] CHIP:DMG:                         Cluster = 0x34,
          [1659972088.498061][3458:3458] CHIP:DMG:                         Attribute = 0x0000_0003,
          [1659972088.498103][3458:3458] CHIP:DMG:                 }
          [1659972088.498144][3458:3458] CHIP:DMG:
          [1659972088.498180][3458:3458] CHIP:DMG:         ],
          [1659972088.498219][3458:3458] CHIP:DMG:
          [1659972088.498257][3458:3458] CHIP:DMG:         isFabricFiltered = true,
          [1659972088.498294][3458:3458] CHIP:DMG:         InteractionModelRevision = 1
          [1659972088.498328][3458:3458] CHIP:DMG: },
          [1659972088.498431][3458:3458] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1659972088.498545][3458:3458] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1659972088.498587][3458:3458] CHIP:DMG: <RE:Run> Cluster 34, Attribute 3 is dirty
          [1659972088.498618][3458:3458] CHIP:DMG: Reading attribute: Cluster=0x0000_0034 Endpoint=0 AttributeId=0x0000_0003 (expanded=0)
          [1659972088.498657][3458:3458] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0034 e=0 p=v
          [1659972088.498702][3458:3458] CHIP:DMG: AccessControl: allowed
      disabled: true
