# 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-FLW-3.1] Attributes with client as DUT

PICS:
    - FLW.C
    - FLW.C.AM-READ
    - FLW.C.AO-READ
    - FLW.C.AM-WRITE
    - FLW.C.AO-WRITE

config:
    nodeId: 0x12344321
    cluster: "Basic"
    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:
          "DUT reads all supported mandatory attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          ./chip-tool flowmeasurement read measured-value 1 1

          Verify read command is received on TH(all-clusters-app) log

          [1658853801.750840][29347:29347] CHIP:IM: Received Read request
          [1658853801.750918][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853801.750945][29347:29347] CHIP:DMG: {
          [1658853801.750968][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853801.750993][29347:29347] CHIP:DMG:         [
          [1658853801.751017][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853801.751044][29347:29347] CHIP:DMG:                 {
          [1658853801.751072][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853801.751105][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853801.751137][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0000,
          [1658853801.751167][29347:29347] CHIP:DMG:                 }
          [1658853801.751195][29347:29347] CHIP:DMG:
          [1658853801.751220][29347:29347] CHIP:DMG:         ],
          [1658853801.751248][29347:29347] CHIP:DMG:
          [1658853801.751275][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853801.751300][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853801.751323][29347:29347] CHIP:DMG: },
          [1658853801.751396][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853801.751480][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853801.751510][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 0 is dirty
          [1658853801.751532][29347:29347] CHIP:DMG: Reading attribute: Cluster=0x0000_0404 Endpoint=1 AttributeId=0x0000_0000 (expanded=0)





          "./chip-tool flowmeasurement read min-measured-value 1 1

          Verify read command is received on TH(all-clusters-app) log

          [1658853849.969073][29347:29347] CHIP:IM: Received Read request
          [1658853849.969151][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853849.969192][29347:29347] CHIP:DMG: {
          [1658853849.969214][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853849.969240][29347:29347] CHIP:DMG:         [
          [1658853849.969272][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853849.969301][29347:29347] CHIP:DMG:                 {
          [1658853849.969337][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853849.969369][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853849.969410][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0001,
          [1658853849.969447][29347:29347] CHIP:DMG:                 }
          [1658853849.969476][29347:29347] CHIP:DMG:
          [1658853849.969511][29347:29347] CHIP:DMG:         ],
          [1658853849.969539][29347:29347] CHIP:DMG:
          [1658853849.969574][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853849.969600][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853849.969628][29347:29347] CHIP:DMG: },
          [1658853849.969697][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853849.969791][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853849.969831][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 1 is dirty



          "./chip-tool flowmeasurement read max-measured-value 1 1

          Verify read command is received on TH(all-clusters-app) log

          [1658853898.416395][29347:29347] CHIP:IM: Received Read request
          [1658853898.416472][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853898.416513][29347:29347] CHIP:DMG: {
          [1658853898.416536][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853898.416571][29347:29347] CHIP:DMG:         [
          [1658853898.416596][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853898.416633][29347:29347] CHIP:DMG:                 {
          [1658853898.416662][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853898.416703][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853898.416746][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0002,
          [1658853898.416776][29347:29347] CHIP:DMG:                 }
          [1658853898.416813][29347:29347] CHIP:DMG:
          [1658853898.416839][29347:29347] CHIP:DMG:         ],
          [1658853898.416876][29347:29347] CHIP:DMG:
          [1658853898.416903][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853898.416937][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853898.416960][29347:29347] CHIP:DMG: },
          [1658853898.417051][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853898.417141][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853898.417179][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 2 is dirty
      disabled: true

    - label:
          "DUT reads all supported optional attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          chip-tool flowmeasurement read tolerance 1 1

          Verify read command is received on TH(all-clusters-app) log

          [1658853991.266232][29347:29347] CHIP:IM: Received Read request
          [1658853991.266328][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853991.266382][29347:29347] CHIP:DMG: {
          [1658853991.266413][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853991.266461][29347:29347] CHIP:DMG:         [
          [1658853991.266494][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853991.266545][29347:29347] CHIP:DMG:                 {
          [1658853991.266584][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853991.266640][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853991.266694][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0003,
          [1658853991.266736][29347:29347] CHIP:DMG:                 }
          [1658853991.266785][29347:29347] CHIP:DMG:
          [1658853991.266820][29347:29347] CHIP:DMG:         ],
          [1658853991.266869][29347:29347] CHIP:DMG:
          [1658853991.266905][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853991.266952][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853991.266984][29347:29347] CHIP:DMG: },
          [1658853991.267091][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853991.267218][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853991.267257][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 3 is dirty
      disabled: true

    - label:
          "DUT writes a suitable value to all supported mandatory attributes on
          the TH one at a time in a manufacturer specific order"
      verification: |
          This cluster doesn"t have any writable attributes
      disabled: true

    - label:
          "DUT writes a suitable value to all supported optional attributes on
          the TH one at a time in a manufacturer specific order"
      verification: |
          This cluster doesn"t have any writable attributes
      disabled: true

    - label:
          "Configure TH such that it implements mandatory and none of the
          optional attributes of the server-side of the cluster, and that it
          also reflects this in global attributes such as FeatureMap and
          AttributeList. Commission DUT to TH again"
      verification: |
          ./chip-tool flowmeasurement read attribute-list 1 1

          Verify DUT receives AttributeList response on the TH(all-clusters-minimal-app) Log:

          Received Read request
          [1663067480.162780][4200:4200] CHIP:DMG: ReadRequestMessage =
          [1663067480.162811][4200:4200] CHIP:DMG: {
          [1663067480.162845][4200:4200] CHIP:DMG:         AttributePathIBs =
          [1663067480.162885][4200:4200] CHIP:DMG:         [
          [1663067480.162912][4200:4200] CHIP:DMG:                 AttributePathIB =
          [1663067480.162946][4200:4200] CHIP:DMG:                 {
          [1663067480.162980][4200:4200] CHIP:DMG:                         Endpoint = 0x1,
          [1663067480.163018][4200:4200] CHIP:DMG:                         Cluster = 0x404,
          [1663067480.163055][4200:4200] CHIP:DMG:                         Attribute = 0x0000_FFFB,
          [1663067480.163088][4200:4200] CHIP:DMG:                 }
          [1663067480.163121][4200:4200] CHIP:DMG:
          [1663067480.163154][4200:4200] CHIP:DMG:         ],
          [1663067480.163185][4200:4200] CHIP:DMG:
          [1663067480.163213][4200:4200] CHIP:DMG:         isFabricFiltered = true,
          [1663067480.163243][4200:4200] CHIP:DMG:         InteractionModelRevision = 1
          [1663067480.163268][4200:4200] CHIP:DMG: },
          [1663067480.163351][4200:4200] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1663067480.163457][4200:4200] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1663067480.163488][4200:4200] CHIP:DMG: <RE:Run> Cluster 404, Attribute fffb is dirty
          [1663067480.163512][4200:4200] CHIP:DMG: Reading attribute: Cluster=0x0000_0404 Endpoint=1 AttributeId=0x0000_FFFB (expanded=0)


          ./chip-tool flowmeasurement read feature-map 1 1

          Verify DUT receives FeatureMap attribute  response on the TH(all-clusters-minimal-app) Log:

          Received Read request
          [1663067626.167648][4200:4200] CHIP:DMG: ReadRequestMessage =
          [1663067626.167697][4200:4200] CHIP:DMG: {
          [1663067626.167722][4200:4200] CHIP:DMG:         AttributePathIBs =
          [1663067626.167759][4200:4200] CHIP:DMG:         [
          [1663067626.167788][4200:4200] CHIP:DMG:                 AttributePathIB =
          [1663067626.167823][4200:4200] CHIP:DMG:                 {
          [1663067626.167855][4200:4200] CHIP:DMG:                         Endpoint = 0x1,
          [1663067626.167899][4200:4200] CHIP:DMG:                         Cluster = 0x404,
          [1663067626.167937][4200:4200] CHIP:DMG:                         Attribute = 0x0000_FFFC,
          [1663067626.167981][4200:4200] CHIP:DMG:                 }
          [1663067626.168014][4200:4200] CHIP:DMG:
          [1663067626.168053][4200:4200] CHIP:DMG:         ],
          [1663067626.168087][4200:4200] CHIP:DMG:
          [1663067626.168116][4200:4200] CHIP:DMG:         isFabricFiltered = true,
          [1663067626.168155][4200:4200] CHIP:DMG:         InteractionModelRevision = 1
          [1663067626.168181][4200:4200] CHIP:DMG: },
          [1663067626.168275][4200:4200] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1663067626.168394][4200:4200] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1663067626.168438][4200:4200] CHIP:DMG: <RE:Run> Cluster 404, Attribute fffc is dirty
          [1663067626.168462][4200:4200] CHIP:DMG: Reading attribute: Cluster=0x0000_0404 Endpoint=1 AttributeId=0x0000_FFFC (expanded=0)



          ./chip-tool flowmeasurement read measured-value 1 1

          Verify DUT receives MeasuredValue response on the TH(all-clusters-minimal-app) Log:

          [1658853801.750840][29347:29347] CHIP:IM: Received Read request
          [1658853801.750918][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853801.750945][29347:29347] CHIP:DMG: {
          [1658853801.750968][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853801.750993][29347:29347] CHIP:DMG:         [
          [1658853801.751017][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853801.751044][29347:29347] CHIP:DMG:                 {
          [1658853801.751072][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853801.751105][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853801.751137][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0000,
          [1658853801.751167][29347:29347] CHIP:DMG:                 }
          [1658853801.751195][29347:29347] CHIP:DMG:
          [1658853801.751220][29347:29347] CHIP:DMG:         ],
          [1658853801.751248][29347:29347] CHIP:DMG:
          [1658853801.751275][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853801.751300][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853801.751323][29347:29347] CHIP:DMG: },
          [1658853801.751396][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853801.751480][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853801.751510][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 0 is dirty
          [1658853801.751532][29347:29347] CHIP:DMG: Reading attribute: Cluster=0x0000_0404 Endpoint=1 AttributeId=0x0000_0000 (expanded=0)





          ./chip-tool flowmeasurement read min-measured-value 1 1

          Verify DUT receives MinMeasuredValue response on the TH(all-clusters-minimal-app) Log:

          [1658853849.969073][29347:29347] CHIP:IM: Received Read request
          [1658853849.969151][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853849.969192][29347:29347] CHIP:DMG: {
          [1658853849.969214][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853849.969240][29347:29347] CHIP:DMG:         [
          [1658853849.969272][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853849.969301][29347:29347] CHIP:DMG:                 {
          [1658853849.969337][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853849.969369][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853849.969410][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0001,
          [1658853849.969447][29347:29347] CHIP:DMG:                 }
          [1658853849.969476][29347:29347] CHIP:DMG:
          [1658853849.969511][29347:29347] CHIP:DMG:         ],
          [1658853849.969539][29347:29347] CHIP:DMG:
          [1658853849.969574][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853849.969600][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853849.969628][29347:29347] CHIP:DMG: },
          [1658853849.969697][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853849.969791][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853849.969831][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 1 is dirty



          ./chip-tool flowmeasurement read max-measured-value 1 1

          Verify DUT receives MaxMeasured Value response on the TH(all-clusters-minimal-app) Log:

          [1658853898.416395][29347:29347] CHIP:IM: Received Read request
          [1658853898.416472][29347:29347] CHIP:DMG: ReadRequestMessage =
          [1658853898.416513][29347:29347] CHIP:DMG: {
          [1658853898.416536][29347:29347] CHIP:DMG:         AttributePathIBs =
          [1658853898.416571][29347:29347] CHIP:DMG:         [
          [1658853898.416596][29347:29347] CHIP:DMG:                 AttributePathIB =
          [1658853898.416633][29347:29347] CHIP:DMG:                 {
          [1658853898.416662][29347:29347] CHIP:DMG:                         Endpoint = 0x1,
          [1658853898.416703][29347:29347] CHIP:DMG:                         Cluster = 0x404,
          [1658853898.416746][29347:29347] CHIP:DMG:                         Attribute = 0x0000_0002,
          [1658853898.416776][29347:29347] CHIP:DMG:                 }
          [1658853898.416813][29347:29347] CHIP:DMG:
          [1658853898.416839][29347:29347] CHIP:DMG:         ],
          [1658853898.416876][29347:29347] CHIP:DMG:
          [1658853898.416903][29347:29347] CHIP:DMG:         isFabricFiltered = true,
          [1658853898.416937][29347:29347] CHIP:DMG:         InteractionModelRevision = 1
          [1658853898.416960][29347:29347] CHIP:DMG: },
          [1658853898.417051][29347:29347] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658853898.417141][29347:29347] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1658853898.417179][29347:29347] CHIP:DMG: <RE:Run> Cluster 404, Attribute 2 is dirty
          "
      disabled: true

    - label:
          "DUT reads all supported optional attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          ./chip-tool flowmeasurement read tolerance 1 1

          Verify DUT receives Tolerance response on the TH(all-clusters-minimal-app) Log:

           Received Read request
          [1663067899.776588][4200:4200] CHIP:DMG: ReadRequestMessage =
          [1663067899.776657][4200:4200] CHIP:DMG: {
          [1663067899.776715][4200:4200] CHIP:DMG:         AttributePathIBs =
          [1663067899.776792][4200:4200] CHIP:DMG:         [
          [1663067899.776849][4200:4200] CHIP:DMG:                 AttributePathIB =
          [1663067899.776929][4200:4200] CHIP:DMG:                 {
          [1663067899.777008][4200:4200] CHIP:DMG:                         Endpoint = 0x1,
          [1663067899.777083][4200:4200] CHIP:DMG:                         Cluster = 0x404,
          [1663067899.777163][4200:4200] CHIP:DMG:                         Attribute = 0x0000_0003,
          [1663067899.777247][4200:4200] CHIP:DMG:                 }
          [1663067899.777326][4200:4200] CHIP:DMG:
          [1663067899.777397][4200:4200] CHIP:DMG:         ],
          [1663067899.777467][4200:4200] CHIP:DMG:
          [1663067899.777533][4200:4200] CHIP:DMG:         isFabricFiltered = true,
          [1663067899.777596][4200:4200] CHIP:DMG:         InteractionModelRevision = 1
          [1663067899.777654][4200:4200] CHIP:DMG: },
          [1663067899.777873][4200:4200] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1663067899.778081][4200:4200] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1663067899.778151][4200:4200] CHIP:DMG: <RE:Run> Cluster 404, Attribute 3 is dirty
          [1663067899.778209][4200:4200] CHIP:DMG: Reading attribute: Cluster=0x0000_0404 Endpoint=1 AttributeId=0x0000_0003 (expanded=0)
      disabled: true

    - label:
          "DUT writes a suitable value to all supported optional attributes on
          the TH one at a time in a manufacturer specific order"
      verification: |
          This cluster doesn"t have any writable attributes
      disabled: true
