# 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.

name: 68.3.1. [TC-BOOL-3.1] Attributes with Client as DUT

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

config:
    nodeId: 0x12344321
    cluster: "Boolean State"
    endpoint: 0

tests:
    #- label: "Wait for the device to be commissioned"
    #  cluster: "DelayCommands"
    #  command: "WaitForCommissioning"

    - label: "Read attribute: StateValue"
      PICS: BOOL.C.AM-READ
      wait: "readAttribute"
      attribute: "StateValue"

    - 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 booleanstate read feature-map 1 1

          Verify none of the optional feature of the server-side of the cluster is listed  on TH(all-clusters-minnimal-app) Log

          [1666936223.132263][2546:2546] CHIP:EM: Handling via exchange: 56922r, Delegate: 0xaaaad02b0288
          [1666936223.132365][2546:2546] CHIP:IM: Received Read request
          [1666936223.132562][2546:2546] CHIP:DMG: ReadRequestMessage =
          [1666936223.132653][2546:2546] CHIP:DMG: {
          [1666936223.132709][2546:2546] CHIP:DMG:         AttributePathIBs =
          [1666936223.132780][2546:2546] CHIP:DMG:         [
          [1666936223.132844][2546:2546] CHIP:DMG:                 AttributePathIB =
          [1666936223.132961][2546:2546] CHIP:DMG:                 {
          [1666936223.133043][2546:2546] CHIP:DMG:                         Endpoint = 0x1,
          [1666936223.133153][2546:2546] CHIP:DMG:                         Cluster = 0x45,
          [1666936223.133238][2546:2546] CHIP:DMG:                         Attribute = 0x0000_FFFC,
          [1666936223.133340][2546:2546] CHIP:DMG:                 }
          [1666936223.133421][2546:2546] CHIP:DMG:
          [1666936223.133518][2546:2546] CHIP:DMG:         ],
          [1666936223.133592][2546:2546] CHIP:DMG:
          [1666936223.133690][2546:2546] CHIP:DMG:         isFabricFiltered = true,
          [1666936223.133757][2546:2546] CHIP:DMG:         InteractionModelRevision = 1
          [1666936223.133843][2546:2546] CHIP:DMG: },
          [1666936223.134040][2546:2546] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1666936223.134302][2546:2546] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1666936223.134381][2546:2546] CHIP:DMG: <RE:Run> Cluster 45, Attribute fffc is dirty
          [1666936223.134437][2546:2546] CHIP:DMG: Reading attribute: Cluster=0x0000_0045 Endpoint=1 AttributeId=0x0000_FFFC (expanded=0)
          [1666936223.134506][2546:2546] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0045 e=1 p=v
          [1666936223.134610][2546:2546] CHIP:DMG: AccessControl: allowed
          [1666936223.134803][2546:2546] CHIP:DMG: <RE> Sending report (payload has 37 bytes)...
          [1666936223.135460][2546:2546] CHIP:EM: <<< [E:56922r M:17358809 (Ack:120184015)] (S) Msg TX to 1:000000000001B669 [A6ED] --- Type 0001:05 (IM:ReportData)
          [1666936223.135576][2546:2546] CHIP:IN: (S) Sending msg 17358809 on secure session with LSID: 15175
          [1666936223.136334][2546:2546] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0e:be37%eth0]:35992 | 17358809 | [Interaction Model  (1) / Report Data (0x05) / Session = 13737 / Exchange = 56922]
          [1666936223.136444][2546:2546] CHIP:DMG: Header Flags =
          [1666936223.136503][2546:2546] CHIP:DMG: {
          [1666936223.136592][2546:2546] CHIP:DMG:     Exchange (0x06) =
          [1666936223.136649][2546:2546] CHIP:DMG:     {
          [1666936223.136710][2546:2546] CHIP:DMG:         AckMsg = 120184015
          [1666936223.136794][2546:2546] CHIP:DMG:         NeedsAck = true
          [1666936223.136852][2546:2546] CHIP:DMG:     }
          [1666936223.136926][2546:2546] CHIP:DMG: }
          [1666936223.137005][2546:2546] CHIP:DMG:
          [1666936223.137077][2546:2546] CHIP:DMG: Encrypted Payload (71 bytes) =
          [1666936223.137257][2546:2546] CHIP:DMG: {
          [1666936223.137320][2546:2546] CHIP:DMG:     data = 00a93500d9df0801fc3a3b7ec6f761c31f328854cd71ec11f2d3486635575b63f02c796af2820a3ea5eda769ed4b44fecdc89d2f050c1d0a325141f9fe1e941a5821abfbc01a45
          [1666936223.137404][2546:2546] CHIP:DMG:     buffer_ptr = 187650953656928
          [1666936223.137459][2546:2546] CHIP:DMG: }
          [1666936223.137513][2546:2546] CHIP:DMG:
          [1666936223.137716][2546:2546] CHIP:DMG: ReportDataMessage =
          [1666936223.137810][2546:2546] CHIP:DMG: {
          [1666936223.137866][2546:2546] CHIP:DMG:         AttributeReportIBs =
          [1666936223.137968][2546:2546] CHIP:DMG:         [
          [1666936223.138034][2546:2546] CHIP:DMG:                 AttributeReportIB =
          [1666936223.138151][2546:2546] CHIP:DMG:                 {
          [1666936223.138231][2546:2546] CHIP:DMG:                         AttributeDataIB =
          [1666936223.138337][2546:2546] CHIP:DMG:                         {
          [1666936223.138427][2546:2546] CHIP:DMG:                                 DataVersion = 0x1e70d063,
          [1666936223.138536][2546:2546] CHIP:DMG:                                 AttributePathIB =
          [1666936223.138625][2546:2546] CHIP:DMG:                                 {
          [1666936223.138803][2546:2546] CHIP:DMG:                                         Endpoint = 0x1,
          [1666936223.138899][2546:2546] CHIP:DMG:                                         Cluster = 0x45,
          [1666936223.139021][2546:2546] CHIP:DMG:                                         Attribute = 0x0000_FFFC,
          [1666936223.139109][2546:2546] CHIP:DMG:                                 }
          [1666936223.139225][2546:2546] CHIP:DMG:
          [1666936223.139318][2546:2546] CHIP:DMG:                                 Data = 0,
          [1666936223.139424][2546:2546] CHIP:DMG:                         },
          [1666936223.139514][2546:2546] CHIP:DMG:
          [1666936223.139611][2546:2546] CHIP:DMG:                 },
          [1666936223.139698][2546:2546] CHIP:DMG:
          [1666936223.139783][2546:2546] CHIP:DMG:         ],

          ./chip-tool booleanstate read attribute-list 1 1

          Verify none of the optional attributes of the server-side of the cluster is listed  on TH(all-clusters-minnimal-app) Log

          [1665059548.735458][9263:9263] CHIP:DMG: ReportDataMessage =
          [1665059548.735528][9263:9263] CHIP:DMG: {
          [1665059548.735575][9263:9263] CHIP:DMG:         AttributeReportIBs =
          [1665059548.735699][9263:9263] CHIP:DMG:         [
          [1665059548.735763][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.735840][9263:9263] CHIP:DMG:                 {
          [1665059548.735906][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.735980][9263:9263] CHIP:DMG:                         {
          [1665059548.736051][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.736125][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.736235][9263:9263] CHIP:DMG:                                 {
          [1665059548.736342][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.736451][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.736536][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.736614][9263:9263] CHIP:DMG:                                 }
          [1665059548.736718][9263:9263] CHIP:DMG:
          [1665059548.736797][9263:9263] CHIP:DMG:                                 Data = [
          [1665059548.736896][9263:9263] CHIP:DMG:
          [1665059548.736981][9263:9263] CHIP:DMG:                                 ],
          [1665059548.737053][9263:9263] CHIP:DMG:                         },
          [1665059548.737151][9263:9263] CHIP:DMG:
          [1665059548.737217][9263:9263] CHIP:DMG:                 },
          [1665059548.737331][9263:9263] CHIP:DMG:
          [1665059548.737394][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.737499][9263:9263] CHIP:DMG:                 {
          [1665059548.737718][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.737821][9263:9263] CHIP:DMG:                         {
          [1665059548.737898][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.737995][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.738074][9263:9263] CHIP:DMG:                                 {
          [1665059548.738185][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.738269][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.738373][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.738464][9263:9263] CHIP:DMG:                                         ListIndex = Null,
          [1665059548.738587][9263:9263] CHIP:DMG:                                 }
          [1665059548.738693][9263:9263] CHIP:DMG:
          [1665059548.738778][9263:9263] CHIP:DMG:                                 Data = 0,
          [1665059548.738874][9263:9263] CHIP:DMG:                         },
          [1665059548.738950][9263:9263] CHIP:DMG:
          [1665059548.739038][9263:9263] CHIP:DMG:                 },
          [1665059548.739130][9263:9263] CHIP:DMG:
          [1665059548.739192][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.739295][9263:9263] CHIP:DMG:                 {
          [1665059548.739365][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.739438][9263:9263] CHIP:DMG:                         {
          [1665059548.739535][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.739605][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.739704][9263:9263] CHIP:DMG:                                 {
          [1665059548.739785][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.739891][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.739973][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.740052][9263:9263] CHIP:DMG:                                         ListIndex = Null,
          [1665059548.740151][9263:9263] CHIP:DMG:                                 }
          [1665059548.740235][9263:9263] CHIP:DMG:
          [1665059548.740337][9263:9263] CHIP:DMG:                                 Data = 65528,
          [1665059548.740403][9263:9263] CHIP:DMG:                         },
          [1665059548.740510][9263:9263] CHIP:DMG:
          [1665059548.740576][9263:9263] CHIP:DMG:                 },
          [1665059548.740667][9263:9263] CHIP:DMG:
          [1665059548.740722][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.740824][9263:9263] CHIP:DMG:                 {
          [1665059548.740891][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.740986][9263:9263] CHIP:DMG:                         {
          [1665059548.741063][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.741159][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.741240][9263:9263] CHIP:DMG:                                 {
          [1665059548.741320][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.741420][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.741493][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.741613][9263:9263] CHIP:DMG:                                         ListIndex = Null,
          [1665059548.741769][9263:9263] CHIP:DMG:                                 }
          [1665059548.741862][9263:9263] CHIP:DMG:
          [1665059548.741954][9263:9263] CHIP:DMG:                                 Data = 65529,
          [1665059548.742028][9263:9263] CHIP:DMG:                         },
          [1665059548.742136][9263:9263] CHIP:DMG:
          [1665059548.742198][9263:9263] CHIP:DMG:                 },
          [1665059548.742311][9263:9263] CHIP:DMG:
          [1665059548.742375][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.742455][9263:9263] CHIP:DMG:                 {
          [1665059548.742545][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.742621][9263:9263] CHIP:DMG:                         {
          [1665059548.742719][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.742794][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.742865][9263:9263] CHIP:DMG:                                 {
          [1665059548.742966][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.743049][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.743157][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.743236][9263:9263] CHIP:DMG:                                         ListIndex = Null,
          [1665059548.743332][9263:9263] CHIP:DMG:                                 }
          [1665059548.743426][9263:9263] CHIP:DMG:
          [1665059548.743526][9263:9263] CHIP:DMG:                                 Data = 65531,
          [1665059548.743601][9263:9263] CHIP:DMG:                         },
          [1665059548.743710][9263:9263] CHIP:DMG:
          [1665059548.743778][9263:9263] CHIP:DMG:                 },
          [1665059548.743886][9263:9263] CHIP:DMG:
          [1665059548.743945][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.744023][9263:9263] CHIP:DMG:                 {
          [1665059548.744106][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.744172][9263:9263] CHIP:DMG:                         {
          [1665059548.744247][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.744321][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.744394][9263:9263] CHIP:DMG:                                 {
          [1665059548.744497][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.744581][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.744689][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.744772][9263:9263] CHIP:DMG:                                         ListIndex = Null,
          [1665059548.744878][9263:9263] CHIP:DMG:                                 }
          [1665059548.744957][9263:9263] CHIP:DMG:
          [1665059548.745062][9263:9263] CHIP:DMG:                                 Data = 65532,
          [1665059548.745135][9263:9263] CHIP:DMG:                         },
          [1665059548.745235][9263:9263] CHIP:DMG:
          [1665059548.745302][9263:9263] CHIP:DMG:                 },
          [1665059548.745408][9263:9263] CHIP:DMG:
          [1665059548.745468][9263:9263] CHIP:DMG:                 AttributeReportIB =
          [1665059548.745585][9263:9263] CHIP:DMG:                 {
          [1665059548.745678][9263:9263] CHIP:DMG:                         AttributeDataIB =
          [1665059548.745753][9263:9263] CHIP:DMG:                         {
          [1665059548.745851][9263:9263] CHIP:DMG:                                 DataVersion = 0xd0240b6a,
          [1665059548.745924][9263:9263] CHIP:DMG:                                 AttributePathIB =
          [1665059548.746024][9263:9263] CHIP:DMG:                                 {
          [1665059548.746103][9263:9263] CHIP:DMG:                                         Endpoint = 0x1,
          [1665059548.746208][9263:9263] CHIP:DMG:                                         Cluster = 0x45,
          [1665059548.746292][9263:9263] CHIP:DMG:                                         Attribute = 0x0000_FFFB,
          [1665059548.746373][9263:9263] CHIP:DMG:                                         ListIndex = Null,
          [1665059548.746473][9263:9263] CHIP:DMG:                                 }
          [1665059548.746551][9263:9263] CHIP:DMG:
          [1665059548.746654][9263:9263] CHIP:DMG:                                 Data = 65533,
          [1665059548.746728][9263:9263] CHIP:DMG:                         },


           ./chip-tool booleanstate read state-value 1 1

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

          [1666174757.461171][21506:21506] CHIP:EM: Handling via exchange: 33623r, Delegate: 0xaaaac93380e0
          [1666174757.461271][21506:21506] CHIP:IM: Received Read request
          [1666174757.461438][21506:21506] CHIP:DMG: ReadRequestMessage =
          [1666174757.461510][21506:21506] CHIP:DMG: {
          [1666174757.461565][21506:21506] CHIP:DMG:         AttributePathIBs =
          [1666174757.461629][21506:21506] CHIP:DMG:         [
          [1666174757.461690][21506:21506] CHIP:DMG:                 AttributePathIB =
          [1666174757.461769][21506:21506] CHIP:DMG:                 {
          [1666174757.461855][21506:21506] CHIP:DMG:                         Endpoint = 0x1,
          [1666174757.461999][21506:21506] CHIP:DMG:                         Cluster = 0x45,
          [1666174757.462085][21506:21506] CHIP:DMG:                         Attribute = 0x0000_0000,
          [1666174757.462161][21506:21506] CHIP:DMG:                 }
          [1666174757.462235][21506:21506] CHIP:DMG:
          [1666174757.462300][21506:21506] CHIP:DMG:         ],
          [1666174757.462371][21506:21506] CHIP:DMG:
          [1666174757.462440][21506:21506] CHIP:DMG:         isFabricFiltered = true,
          [1666174757.462504][21506:21506] CHIP:DMG:         InteractionModelRevision = 1
          [1666174757.462565][21506:21506] CHIP:DMG: },
          [1666174757.462734][21506:21506] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1666174757.462977][21506:21506] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1666174757.463049][21506:21506] CHIP:DMG: <RE:Run> Cluster 45, Attribute 0 is dirty
          [1666174757.463104][21506:21506] CHIP:DMG: Reading attribute: Cluster=0x0000_0045 Endpoint=1 AttributeId=0x0000_0000 (expanded=0)
          [1666174757.463172][21506:21506] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0045 e=1 p=v
          [1666174757.463248][21506:21506] CHIP:DMG: AccessControl: allowed
          [1666174757.463365][21506:21506] CHIP:DMG: <RE> Sending report (payload has 35 bytes)...
          [1666174757.463975][21506:21506] CHIP:EM: <<< [E:33623r M:221389354 (Ack:15980397)] (S) Msg TX to 1:000000000001B669 [A7EF] --- Type 0001:05 (IM:ReportData)
          [1666174757.464087][21506:21506] CHIP:IN: (S) Sending msg 221389354 on secure session with LSID: 55654
          [1666174757.464808][21506:21506] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0e:be37%wlan0]:35514 | 221389354 | [Interaction Model  (1) / Report Data (0x05) / Session = 18738 / Exchange = 33623]
          [1666174757.464917][21506:21506] CHIP:DMG: Header Flags =
          [1666174757.464974][21506:21506] CHIP:DMG: {
          [1666174757.465062][21506:21506] CHIP:DMG:     Exchange (0x06) =
          [1666174757.465119][21506:21506] CHIP:DMG:     {
          [1666174757.465178][21506:21506] CHIP:DMG:         AckMsg = 15980397
          [1666174757.465228][21506:21506] CHIP:DMG:         NeedsAck = true
          [1666174757.465288][21506:21506] CHIP:DMG:     }
          [1666174757.465360][21506:21506] CHIP:DMG: }
          [1666174757.465425][21506:21506] CHIP:DMG:
          [1666174757.465495][21506:21506] CHIP:DMG: Encrypted Payload (69 bytes) =
          [1666174757.465543][21506:21506] CHIP:DMG: {
          [1666174757.465597][21506:21506] CHIP:DMG:     data = 003249002a22320d70f90c31d24191bdcae9c8e10d0059f5a90bcc5c7c921dffd49596846c3d5131af0f1b0d5dac89dc70bec2a05fcefd34726640374895b32262fac29b72
          [1666174757.465653][21506:21506] CHIP:DMG:     buffer_ptr = 187650839759600
          [1666174757.465703][21506:21506] CHIP:DMG: }
          [1666174757.465750][21506:21506] CHIP:DMG:
          [1666174757.465959][21506:21506] CHIP:DMG: ReportDataMessage =
          [1666174757.466032][21506:21506] CHIP:DMG: {
          [1666174757.466086][21506:21506] CHIP:DMG:         AttributeReportIBs =
          [1666174757.466173][21506:21506] CHIP:DMG:         [
          [1666174757.466233][21506:21506] CHIP:DMG:                 AttributeReportIB =
          [1666174757.466320][21506:21506] CHIP:DMG:                 {
          [1666174757.466395][21506:21506] CHIP:DMG:                         AttributeDataIB =
          [1666174757.466476][21506:21506] CHIP:DMG:                         {
          [1666174757.466561][21506:21506] CHIP:DMG:                                 DataVersion = 0x83aa29ff,
          [1666174757.466644][21506:21506] CHIP:DMG:                                 AttributePathIB =
          [1666174757.466729][21506:21506] CHIP:DMG:                                 {
          [1666174757.466833][21506:21506] CHIP:DMG:                                         Endpoint = 0x1,
          [1666174757.466917][21506:21506] CHIP:DMG:                                         Cluster = 0x45,
          [1666174757.467008][21506:21506] CHIP:DMG:                                         Attribute = 0x0000_0000,
          [1666174757.467091][21506:21506] CHIP:DMG:                                 }
          [1666174757.467181][21506:21506] CHIP:DMG:
          [1666174757.467270][21506:21506] CHIP:DMG:                                 Data = false,
          [1666174757.467344][21506:21506] CHIP:DMG:                         },
          [1666174757.467432][21506:21506] CHIP:DMG:
          [1666174757.467505][21506:21506] CHIP:DMG:                 },
          [1666174757.467582][21506:21506] CHIP:DMG:
          [1666174757.467643][21506:21506] CHIP:DMG:         ],
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"

    - label:
          "DUT reads all supported optional attributes from TH one at a time in
          a manufacturer specific order"
      verification: |
          This cluster doesn't have any  optional attribute
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"

    - 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
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"
