# 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: 13.3.1. [TC-TSUIC-3.1] Attributes with client as DUT

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

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

tests:
    - label:
          "DUT reads all supported mandatory attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration read temperature-display-mode 1 1
          Verify DUT receives  temperature-display-mode attribute response on the TH(all-clusters-app) Log:
          [1658142864.198892][13946:13946] CHIP:IM: Received Read request
          [1658142864.198979][13946:13946] CHIP:DMG: ReadRequestMessage =
          [1658142864.199008][13946:13946] CHIP:DMG: {
          [1658142864.199032][13946:13946] CHIP:DMG:         AttributePathIBs =
          [1658142864.199059][13946:13946] CHIP:DMG:         [
          [1658142864.199085][13946:13946] CHIP:DMG:                 AttributePathIB =
          [1658142864.199114][13946:13946] CHIP:DMG:                 {
          [1658142864.199144][13946:13946] CHIP:DMG:                         Endpoint = 0x1,
          [1658142864.199181][13946:13946] CHIP:DMG:                         Cluster = 0x204,
          [1658142864.199221][13946:13946] CHIP:DMG:                         Attribute = 0x0000_0000,
          [1658142864.199253][13946:13946] CHIP:DMG:                 }
          [1658142864.199284][13946:13946] CHIP:DMG:
          [1658142864.199311][13946:13946] CHIP:DMG:         ],
          [1658142864.199341][13946:13946] CHIP:DMG:
          [1658142864.199369][13946:13946] CHIP:DMG:         isFabricFiltered = true,
          [1658142864.199396][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658142864.199421][13946:13946] CHIP:DMG: },
          [1658142864.199502][13946:13946] CHIP:DMG: IM RH moving to [GeneratingReports]


          ./chip-tool thermostatuserinterfaceconfiguration read keypad-lockout 1 1
          Verify DUT receives keypad-lockout attribute response on the TH(all-clusters-app) Log:
          [1658142905.390042][13946:13946] CHIP:IM: Received Read request
          [1658142905.390148][13946:13946] CHIP:DMG: ReadRequestMessage =
          [1658142905.390177][13946:13946] CHIP:DMG: {
          [1658142905.390199][13946:13946] CHIP:DMG:         AttributePathIBs =
          [1658142905.390225][13946:13946] CHIP:DMG:         [
          [1658142905.390249][13946:13946] CHIP:DMG:                 AttributePathIB =
          [1658142905.390276][13946:13946] CHIP:DMG:                 {
          [1658142905.390304][13946:13946] CHIP:DMG:                         Endpoint = 0x1,
          [1658142905.390335][13946:13946] CHIP:DMG:                         Cluster = 0x204,
          [1658142905.390370][13946:13946] CHIP:DMG:                         Attribute = 0x0000_0001,
          [1658142905.390400][13946:13946] CHIP:DMG:                 }
          [1658142905.390430][13946:13946] CHIP:DMG:
          [1658142905.390455][13946:13946] CHIP:DMG:         ],
          [1658142905.390483][13946:13946] CHIP:DMG:
          [1658142905.390509][13946:13946] CHIP:DMG:         isFabricFiltered = true,
          [1658142905.390534][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658142905.390557][13946:13946] CHIP:DMG: },
          [1658142905.390634][13946:13946] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658142905.390718][13946:13946] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
      disabled: true

    - label:
          "DUT reads all supported optional attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration read  schedule-programming-visibility  1 1
          Verify DUT receives  schedule-programming-visibility  attribute response on the TH(all-clusters-app) Log:
          [1658143293.502829][13946:13946] CHIP:EM: Handling via exchange: 655r, Delegate: 0xaaaad3403ed0
          [1658143293.502867][13946:13946] CHIP:IM: Received Read request
          [1658143293.502943][13946:13946] CHIP:DMG: ReadRequestMessage =
          [1658143293.502969][13946:13946] CHIP:DMG: {
          [1658143293.503018][13946:13946] CHIP:DMG:         AttributePathIBs =
          [1658143293.503046][13946:13946] CHIP:DMG:         [
          [1658143293.503069][13946:13946] CHIP:DMG:                 AttributePathIB =
          [1658143293.503097][13946:13946] CHIP:DMG:                 {
          [1658143293.503125][13946:13946] CHIP:DMG:                         Endpoint = 0x1,
          [1658143293.503159][13946:13946] CHIP:DMG:                         Cluster = 0x204,
          [1658143293.503190][13946:13946] CHIP:DMG:                         Attribute = 0x0000_0002,
          [1658143293.503218][13946:13946] CHIP:DMG:                 }
          [1658143293.503248][13946:13946] CHIP:DMG:
          [1658143293.503273][13946:13946] CHIP:DMG:         ],
          [1658143293.503300][13946:13946] CHIP:DMG:
          [1658143293.503326][13946:13946] CHIP:DMG:         isFabricFiltered = true,
          [1658143293.503351][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658143293.503374][13946:13946] CHIP:DMG: },
          [1658143293.503450][13946:13946] CHIP:DMG: IM RH moving to [GeneratingReports]
      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: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration write temperature-display-mode  1 1 1
          Verify DUT receives  temperature-display-mode   attribute  write response on the TH(all-clusters-app) Log:
          [1658143515.699171][13946:13946] CHIP:DMG: WriteRequestMessage =
          [1658143515.699197][13946:13946] CHIP:DMG: {
          [1658143515.699221][13946:13946] CHIP:DMG:         suppressResponse = false,
          [1658143515.699248][13946:13946] CHIP:DMG:         timedRequest = false,
          [1658143515.699272][13946:13946] CHIP:DMG:         AttributeDataIBs =
          [1658143515.699302][13946:13946] CHIP:DMG:         [
          [1658143515.699326][13946:13946] CHIP:DMG:                 AttributeDataIB =
          [1658143515.699362][13946:13946] CHIP:DMG:                 {
          [1658143515.699388][13946:13946] CHIP:DMG:                         AttributePathIB =
          [1658143515.699419][13946:13946] CHIP:DMG:                         {
          [1658143515.699451][13946:13946] CHIP:DMG:                                 Endpoint = 0x1,
          [1658143515.699484][13946:13946] CHIP:DMG:                                 Cluster = 0x204,
          [1658143515.699514][13946:13946] CHIP:DMG:                                 Attribute = 0x0000_0001,
          [1658143515.699544][13946:13946] CHIP:DMG:                         }
          [1658143515.699577][13946:13946] CHIP:DMG:
          [1658143515.699609][13946:13946] CHIP:DMG:                         Data = 1,
          [1658143515.699638][13946:13946] CHIP:DMG:                 },
          [1658143515.699667][13946:13946] CHIP:DMG:
          [1658143515.699690][13946:13946] CHIP:DMG:         ],
          [1658143515.699719][13946:13946] CHIP:DMG:
          [1658143515.699743][13946:13946] CHIP:DMG:         moreChunkedMessages = false,
          [1658143515.699768][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658143515.699792][13946:13946] CHIP:DMG: },
          [1658143515.699876][13946:13946] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0204 e=1 p=m


           ./chip-tool thermostatuserinterfaceconfiguration write keypad-lockout 1  1 1
          Verify DUT receives keypad-lockout  attribute  write response on the TH(all-clusters-app) Log:
          [1658143708.436060][13946:13946] CHIP:DMG: WriteRequestMessage =
          [1658143708.436090][13946:13946] CHIP:DMG: {
          [1658143708.436115][13946:13946] CHIP:DMG:         suppressResponse = false,
          [1658143708.436148][13946:13946] CHIP:DMG:         timedRequest = false,
          [1658143708.436176][13946:13946] CHIP:DMG:         AttributeDataIBs =
          [1658143708.436210][13946:13946] CHIP:DMG:         [
          [1658143708.436238][13946:13946] CHIP:DMG:                 AttributeDataIB =
          [1658143708.436269][13946:13946] CHIP:DMG:                 {
          [1658143708.436295][13946:13946] CHIP:DMG:                         AttributePathIB =
          [1658143708.436330][13946:13946] CHIP:DMG:                         {
          [1658143708.436368][13946:13946] CHIP:DMG:                                 Endpoint = 0x1,
          [1658143708.436406][13946:13946] CHIP:DMG:                                 Cluster = 0x204,
          [1658143708.436444][13946:13946] CHIP:DMG:                                 Attribute = 0x0000_0001,
          [1658143708.436483][13946:13946] CHIP:DMG:                         }
          [1658143708.436520][13946:13946] CHIP:DMG:
          [1658143708.436561][13946:13946] CHIP:DMG:                         Data = 1,
          [1658143708.436592][13946:13946] CHIP:DMG:                 },
          [1658143708.436627][13946:13946] CHIP:DMG:
          [1658143708.436654][13946:13946] CHIP:DMG:         ],
          [1658143708.436686][13946:13946] CHIP:DMG:
          [1658143708.436714][13946:13946] CHIP:DMG:         moreChunkedMessages = false,
          [1658143708.436743][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658143708.436770][13946:13946] CHIP:DMG: },
          [1658143708.436862][13946:13946] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0204 e=1 p=m
          [1658143708.436903][13946:13946] CHIP:DMG: AccessControl: allowed
      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: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration write schedule-programming-visibility 1 1 1
          Verify DUT receives schedule-programming-visibility   attribute  write response on the TH(all-clusters-app) Log:
          [1658143828.619738][13946:13946] CHIP:DMG: WriteRequestMessage =
          [1658143828.619764][13946:13946] CHIP:DMG: {
          [1658143828.619787][13946:13946] CHIP:DMG:         suppressResponse = false,
          [1658143828.619814][13946:13946] CHIP:DMG:         timedRequest = false,
          [1658143828.619838][13946:13946] CHIP:DMG:         AttributeDataIBs =
          [1658143828.619867][13946:13946] CHIP:DMG:         [
          [1658143828.619891][13946:13946] CHIP:DMG:                 AttributeDataIB =
          [1658143828.619919][13946:13946] CHIP:DMG:                 {
          [1658143828.619944][13946:13946] CHIP:DMG:                         AttributePathIB =
          [1658143828.619980][13946:13946] CHIP:DMG:                         {
          [1658143828.620011][13946:13946] CHIP:DMG:                                 Endpoint = 0x1,
          [1658143828.620045][13946:13946] CHIP:DMG:                                 Cluster = 0x204,
          [1658143828.620078][13946:13946] CHIP:DMG:                                 Attribute = 0x0000_0002,
          [1658143828.620108][13946:13946] CHIP:DMG:                         }
          [1658143828.620140][13946:13946] CHIP:DMG:
          [1658143828.620172][13946:13946] CHIP:DMG:                         Data = 1,
          [1658143828.620200][13946:13946] CHIP:DMG:                 },
          [1658143828.620228][13946:13946] CHIP:DMG:
          [1658143828.620252][13946:13946] CHIP:DMG:         ],
          [1658143828.620280][13946:13946] CHIP:DMG:
          [1658143828.620305][13946:13946] CHIP:DMG:         moreChunkedMessages = false,
          [1658143828.620330][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658143828.620353][13946:13946] CHIP:DMG: },
          [1658143828.620434][13946:13946] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0204 e=1 p=m
      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: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration read temperature-display-mode 1 1
          Verify DUT receives  temperature-display-mode attribute response on the TH(all-clusters-minimal-app) Log:
          [1658142864.198892][13946:13946] CHIP:IM: Received Read request
          [1658142864.198979][13946:13946] CHIP:DMG: ReadRequestMessage =
          [1658142864.199008][13946:13946] CHIP:DMG: {
          [1658142864.199032][13946:13946] CHIP:DMG:         AttributePathIBs =
          [1658142864.199059][13946:13946] CHIP:DMG:         [
          [1658142864.199085][13946:13946] CHIP:DMG:                 AttributePathIB =
          [1658142864.199114][13946:13946] CHIP:DMG:                 {
          [1658142864.199144][13946:13946] CHIP:DMG:                         Endpoint = 0x1,
          [1658142864.199181][13946:13946] CHIP:DMG:                         Cluster = 0x204,
          [1658142864.199221][13946:13946] CHIP:DMG:                         Attribute = 0x0000_0000,
          [1658142864.199253][13946:13946] CHIP:DMG:                 }
          [1658142864.199284][13946:13946] CHIP:DMG:
          [1658142864.199311][13946:13946] CHIP:DMG:         ],
          [1658142864.199341][13946:13946] CHIP:DMG:
          [1658142864.199369][13946:13946] CHIP:DMG:         isFabricFiltered = true,
          [1658142864.199396][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658142864.199421][13946:13946] CHIP:DMG: },
          [1658142864.199502][13946:13946] CHIP:DMG: IM RH moving to [GeneratingReports]


          ./chip-tool thermostatuserinterfaceconfiguration read keypad-lockout 1 1
          Verify DUT receives  keypad-lockout attribute response on the TH(all-clusters-minimal-app) Log:
          [1658142905.390042][13946:13946] CHIP:IM: Received Read request
          [1658142905.390148][13946:13946] CHIP:DMG: ReadRequestMessage =
          [1658142905.390177][13946:13946] CHIP:DMG: {
          [1658142905.390199][13946:13946] CHIP:DMG:         AttributePathIBs =
          [1658142905.390225][13946:13946] CHIP:DMG:         [
          [1658142905.390249][13946:13946] CHIP:DMG:                 AttributePathIB =
          [1658142905.390276][13946:13946] CHIP:DMG:                 {
          [1658142905.390304][13946:13946] CHIP:DMG:                         Endpoint = 0x1,
          [1658142905.390335][13946:13946] CHIP:DMG:                         Cluster = 0x204,
          [1658142905.390370][13946:13946] CHIP:DMG:                         Attribute = 0x0000_0001,
          [1658142905.390400][13946:13946] CHIP:DMG:                 }
          [1658142905.390430][13946:13946] CHIP:DMG:
          [1658142905.390455][13946:13946] CHIP:DMG:         ],
          [1658142905.390483][13946:13946] CHIP:DMG:
          [1658142905.390509][13946:13946] CHIP:DMG:         isFabricFiltered = true,
          [1658142905.390534][13946:13946] CHIP:DMG:         InteractionModelRevision = 1
          [1658142905.390557][13946:13946] CHIP:DMG: },
          [1658142905.390634][13946:13946] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1658142905.390718][13946:13946] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
      disabled: true

    - label:
          "DUT reads all supported optional attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration read  schedule-programming-visibility  1 1

          Verify DUT receives   schedule-programming-visibility attribute response on the TH(all-clusters-minimal-app) Log:
           General error: 0x86 (UNSUPPORTED_ATTRIBUTE)
      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: |
          Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner/Client)

          ./chip-tool thermostatuserinterfaceconfiguration write schedule-programming-visibility 1 1 1

          Verify DUT receives   schedule-programming-visibility attribute write response on the TH(all-clusters-minimal-app) Log:
           General error: 0x86 (UNSUPPORTED_ATTRIBUTE)
      disabled: true
