# 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: 4.3.2. [TC-OO-3.2] Functionality with client as DUT

PICS:
    - OO.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: "DUT issues an Off command to the Test Harness."
      PICS: OO.C.C00.Tx
      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 onoff off 1 1


          Verify  TH recieves " Off command" on the TH (all-cluster-app) log:

          [1650537121.464763][3678:3678] CHIP:DMG: InvokeRequestMessage =
          [1650537121.464818][3678:3678] CHIP:DMG: {
          [1650537121.464866][3678:3678] CHIP:DMG:         suppressResponse = false,
          [1650537121.464922][3678:3678] CHIP:DMG:         timedRequest = false,
          [1650537121.464974][3678:3678] CHIP:DMG:         InvokeRequests =
          [1650537121.465078][3678:3678] CHIP:DMG:         [
          [1650537121.465132][3678:3678] CHIP:DMG:                 CommandDataIB =
          [1650537121.465195][3678:3678] CHIP:DMG:                 {
          [1650537121.465250][3678:3678] CHIP:DMG:                         CommandPathIB =
          [1650537121.465309][3678:3678] CHIP:DMG:                         {
          [1650537121.465370][3678:3678] CHIP:DMG:                                 EndpointId = 0x1,
          [1650537121.465440][3678:3678] CHIP:DMG:                                 ClusterId = 0x6,
          [1650537121.465501][3678:3678] CHIP:DMG:                                 CommandId = 0x0,
          [1650537121.465569][3678:3678] CHIP:DMG:                         },
          [1650537121.465633][3678:3678] CHIP:DMG:
          [1650537121.465687][3678:3678] CHIP:DMG:                         CommandData =
          [1650537121.465744][3678:3678] CHIP:DMG:                         {
          [1650537121.465807][3678:3678] CHIP:DMG:                         },
          [1650537121.465868][3678:3678] CHIP:DMG:                 },
          [1650537121.465932][3678:3678] CHIP:DMG:
          [1650537121.465982][3678:3678] CHIP:DMG:         ],
          [1650537121.466043][3678:3678] CHIP:DMG:
          [1650537121.466092][3678:3678] CHIP:DMG:         InteractionModelRevision = 1
          [1650537121.466141][3678:3678] CHIP:DMG: },
          [1650537121.466254][3678:3678] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=1 p=o
          [1650537121.466322][3678:3678] CHIP:DMG: AccessControl: allowed
          [1650537121.466377][3678:3678] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0000
          [1650537121.466434][3678:3678] CHIP:ZCL: On/Off set value: 1 0
          [1650537121.466486][3678:3678] CHIP:ZCL: On/off already set to new value
      disabled: true

    - label: "DUT issues an On command to the Test Harness."
      PICS: OO.C.C01.Tx
      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 onoff on 1 1


          Verify TH recieves " On command " on the TH (all-cluster-app) log:

          [1650537309.217556][3678:3678] CHIP:DMG: InvokeRequestMessage =
          [1650537309.217647][3678:3678] CHIP:DMG: {
          [1650537309.217706][3678:3678] CHIP:DMG:         suppressResponse = false,
          [1650537309.217773][3678:3678] CHIP:DMG:         timedRequest = false,
          [1650537309.217834][3678:3678] CHIP:DMG:         InvokeRequests =
          [1650537309.217931][3678:3678] CHIP:DMG:         [
          [1650537309.217993][3678:3678] CHIP:DMG:                 CommandDataIB =
          [1650537309.218088][3678:3678] CHIP:DMG:                 {
          [1650537309.218168][3678:3678] CHIP:DMG:                         CommandPathIB =
          [1650537309.218267][3678:3678] CHIP:DMG:                         {
          [1650537309.218374][3678:3678] CHIP:DMG:                                 EndpointId = 0x1,
          [1650537309.218458][3678:3678] CHIP:DMG:                                 ClusterId = 0x6,
          [1650537309.218566][3678:3678] CHIP:DMG:                                 CommandId = 0x1,
          [1650537309.218666][3678:3678] CHIP:DMG:                         },
          [1650537309.218747][3678:3678] CHIP:DMG:
          [1650537309.218839][3678:3678] CHIP:DMG:                         CommandData =
          [1650537309.218928][3678:3678] CHIP:DMG:                         {
          [1650537309.219001][3678:3678] CHIP:DMG:                         },
          [1650537309.219080][3678:3678] CHIP:DMG:                 },
          [1650537309.219180][3678:3678] CHIP:DMG:
          [1650537309.219240][3678:3678] CHIP:DMG:         ],
          [1650537309.219334][3678:3678] CHIP:DMG:
          [1650537309.219394][3678:3678] CHIP:DMG:         InteractionModelRevision = 1
          [1650537309.219474][3678:3678] CHIP:DMG: },
          [1650537309.219624][3678:3678] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=1 p=o
          [1650537309.219724][3678:3678] CHIP:DMG: AccessControl: allowed
          [1650537309.219791][3678:3678] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0001
          [1650537309.219887][3678:3678] CHIP:ZCL: On/Off set value: 1 1
          [1650537309.219951][3678:3678] CHIP:ZCL: Toggle on/off from 0 to 1
      disabled: true

    - label: "DUT issues an Toggle command to the Test Harness."
      PICS: OO.C.C02.Tx
      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 onoff toggle 1 1


          Verify  TH recieves" Toggle command response" on the TH (all-cluster-app) log:

          [1650537502.260837][3678:3678] CHIP:DMG: InvokeRequestMessage =
          [1650537502.260877][3678:3678] CHIP:DMG: {
          [1650537502.260911][3678:3678] CHIP:DMG:         suppressResponse = false,
          [1650537502.260952][3678:3678] CHIP:DMG:         timedRequest = false,
          [1650537502.260988][3678:3678] CHIP:DMG:         InvokeRequests =
          [1650537502.261053][3678:3678] CHIP:DMG:         [
          [1650537502.261092][3678:3678] CHIP:DMG:                 CommandDataIB =
          [1650537502.261145][3678:3678] CHIP:DMG:                 {
          [1650537502.261184][3678:3678] CHIP:DMG:                         CommandPathIB =
          [1650537502.261235][3678:3678] CHIP:DMG:                         {
          [1650537502.261287][3678:3678] CHIP:DMG:                                 EndpointId = 0x1,
          [1650537502.261341][3678:3678] CHIP:DMG:                                 ClusterId = 0x6,
          [1650537502.261390][3678:3678] CHIP:DMG:                                 CommandId = 0x2,
          [1650537502.261440][3678:3678] CHIP:DMG:                         },
          [1650537502.261493][3678:3678] CHIP:DMG:
          [1650537502.261535][3678:3678] CHIP:DMG:                         CommandData =
          [1650537502.261585][3678:3678] CHIP:DMG:                         {
          [1650537502.261632][3678:3678] CHIP:DMG:                         },
          [1650537502.261674][3678:3678] CHIP:DMG:                 },
          [1650537502.261721][3678:3678] CHIP:DMG:
          [1650537502.261756][3678:3678] CHIP:DMG:         ],
          [1650537502.261800][3678:3678] CHIP:DMG:
          [1650537502.261835][3678:3678] CHIP:DMG:         InteractionModelRevision = 1
          [1650537502.261870][3678:3678] CHIP:DMG: },
          [1650537502.261955][3678:3678] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=1 p=o
          [1650537502.262005][3678:3678] CHIP:DMG: AccessControl: allowed
          [1650537502.262044][3678:3678] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0002
          [1650537502.262086][3678:3678] CHIP:ZCL: On/Off set value: 1 2
          [1650537502.262124][3678:3678] CHIP:ZCL: Toggle on/off from 1 to 0
          [1650537502.262157][3678:3678] CHIP:ZCL: Off Command - OnTime :  0
      disabled: true

    - label: "DUT issues an OffWithEffect command to the Test Harness."
      PICS: OO.C.C40.Tx
      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 onoff off-with-effect 1 0 1 1


          Verify  TH recieves " OffWithEffect command response" on the TH (all-cluster-app) log:

          [1650538107.639049][3678:3678] CHIP:DMG: InvokeRequestMessage =
          [1650538107.639115][3678:3678] CHIP:DMG: {
          [1650538107.639154][3678:3678] CHIP:DMG:         suppressResponse = false,
          [1650538107.639198][3678:3678] CHIP:DMG:         timedRequest = false,
          [1650538107.639257][3678:3678] CHIP:DMG:         InvokeRequests =
          [1650538107.639310][3678:3678] CHIP:DMG:         [
          [1650538107.639364][3678:3678] CHIP:DMG:                 CommandDataIB =
          [1650538107.639415][3678:3678] CHIP:DMG:                 {
          [1650538107.639471][3678:3678] CHIP:DMG:                         CommandPathIB =
          [1650538107.639529][3678:3678] CHIP:DMG:                         {
          [1650538107.639602][3678:3678] CHIP:DMG:                                 EndpointId = 0x1,
          [1650538107.639675][3678:3678] CHIP:DMG:                                 ClusterId = 0x6,
          [1650538107.639734][3678:3678] CHIP:DMG:                                 CommandId = 0x40,
          [1650538107.639799][3678:3678] CHIP:DMG:                         },
          [1650538107.639867][3678:3678] CHIP:DMG:
          [1650538107.639914][3678:3678] CHIP:DMG:                         CommandData =
          [1650538107.639984][3678:3678] CHIP:DMG:                         {
          [1650538107.640054][3678:3678] CHIP:DMG:                                 0x0 = 1,
          [1650538107.640113][3678:3678] CHIP:DMG:                                 0x1 = 0,
          [1650538107.640186][3678:3678] CHIP:DMG:                         },
          [1650538107.640247][3678:3678] CHIP:DMG:                 },
          [1650538107.640301][3678:3678] CHIP:DMG:
          [1650538107.640355][3678:3678] CHIP:DMG:         ],
          [1650538107.640420][3678:3678] CHIP:DMG:
          [1650538107.640461][3678:3678] CHIP:DMG:         InteractionModelRevision = 1
          [1650538107.640513][3678:3678] CHIP:DMG: },
          [1650538107.640625][3678:3678] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=1 p=o
          [1650538107.640681][3678:3678] CHIP:DMG: AccessControl: allowed
          [1650538107.640738][3678:3678] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0040
          [1650538107.640853][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0005 update version to ab19f0ce
          [1650538107.640924][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0005 update version to ab19f0cf
          [1650538107.640983][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0005 update version to ab19f0d0
          [1650538107.641025][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d11994
          [1650538107.641087][3678:3678] CHIP:ZCL: On/Off set value: 1 0
          [1650538107.641128][3678:3678] CHIP:ZCL: Toggle on/off from 1 to 0
          [1650538107.641164][3678:3678] CHIP:ZCL: Off Command - OnTime :  0
          [1650538107.641215][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d11995
      disabled: true

    - label:
          "DUT issues an OnWithRecallGlobalScene command to the Test Harness."
      PICS: OO.C.C41.Tx
      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 onoff on-with-recall-global-scene 1 1


          Verify  TH recieves " OnWithRecallGlobalScene command response" on the TH (all-cluster-app) log:

          [1650537790.690122][3678:3678] CHIP:DMG: InvokeRequestMessage =
          [1650537790.690188][3678:3678] CHIP:DMG: {
          [1650537790.690244][3678:3678] CHIP:DMG:         suppressResponse = false,
          [1650537790.690311][3678:3678] CHIP:DMG:         timedRequest = false,
          [1650537790.690371][3678:3678] CHIP:DMG:         InvokeRequests =
          [1650537790.690446][3678:3678] CHIP:DMG:         [
          [1650537790.690507][3678:3678] CHIP:DMG:                 CommandDataIB =
          [1650537790.690582][3678:3678] CHIP:DMG:                 {
          [1650537790.690645][3678:3678] CHIP:DMG:                         CommandPathIB =
          [1650537790.690720][3678:3678] CHIP:DMG:                         {
          [1650537790.690805][3678:3678] CHIP:DMG:                                 EndpointId = 0x1,
          [1650537790.690889][3678:3678] CHIP:DMG:                                 ClusterId = 0x6,
          [1650537790.690969][3678:3678] CHIP:DMG:                                 CommandId = 0x41,
          [1650537790.691047][3678:3678] CHIP:DMG:                         },
          [1650537790.691127][3678:3678] CHIP:DMG:
          [1650537790.691196][3678:3678] CHIP:DMG:                         CommandData =
          [1650537790.691272][3678:3678] CHIP:DMG:                         {
          [1650537790.691347][3678:3678] CHIP:DMG:                         },
          [1650537790.691419][3678:3678] CHIP:DMG:                 },
          [1650537790.691492][3678:3678] CHIP:DMG:
          [1650537790.691539][3678:3678] CHIP:DMG:         ],
          [1650537790.691583][3678:3678] CHIP:DMG:
          [1650537790.691618][3678:3678] CHIP:DMG:         InteractionModelRevision = 1
          [1650537790.691654][3678:3678] CHIP:DMG: },
          [1650537790.691738][3678:3678] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=1 p=o
          [1650537790.691789][3678:3678] CHIP:DMG: AccessControl: allowed
          [1650537790.701316][3678:3678] CHIP:ZCL: On/Off set value: 1 1
          [1650537790.701348][3678:3678] CHIP:ZCL: Toggle on/off from 0 to 1
          [1650537790.701382][3678:3678] CHIP:ZCL: On Command - OffWaitTime :  0
          [1650537790.701414][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d11991
          [1650537790.701452][3678:3678] CHIP:ZCL: On/Toggle Command - Stop Timer
          [1650537790.701485][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d11992
      disabled: true

    - label: "DUT issues an OnWithTimedOff command to the Test Harness."
      PICS: OO.C.C42.Tx
      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 onoff on-with-timed-off 0 120 5 1 1


          Verify  TH recieves " OnWithTimedOff command response" on the TH (all-cluster-app) log:

          [1650538315.673606][3678:3678] CHIP:DMG: InvokeRequestMessage =
          [1650538315.673697][3678:3678] CHIP:DMG: {
          [1650538315.673755][3678:3678] CHIP:DMG:         suppressResponse = false,
          [1650538315.673821][3678:3678] CHIP:DMG:         timedRequest = false,
          [1650538315.673882][3678:3678] CHIP:DMG:         InvokeRequests =
          [1650538315.673983][3678:3678] CHIP:DMG:         [
          [1650538315.674047][3678:3678] CHIP:DMG:                 CommandDataIB =
          [1650538315.674143][3678:3678] CHIP:DMG:                 {
          [1650538315.674210][3678:3678] CHIP:DMG:                         CommandPathIB =
          [1650538315.674309][3678:3678] CHIP:DMG:                         {
          [1650538315.674387][3678:3678] CHIP:DMG:                                 EndpointId = 0x1,
          [1650538315.674491][3678:3678] CHIP:DMG:                                 ClusterId = 0x6,
          [1650538315.674598][3678:3678] CHIP:DMG:                                 CommandId = 0x42,
          [1650538315.674678][3678:3678] CHIP:DMG:                         },
          [1650538315.674781][3678:3678] CHIP:DMG:
          [1650538315.674851][3678:3678] CHIP:DMG:                         CommandData =
          [1650538315.674941][3678:3678] CHIP:DMG:                         {
          [1650538315.674991][3678:3678] CHIP:DMG:                                 0x0 = 0,
          [1650538315.675034][3678:3678] CHIP:DMG:                                 0x1 = 120,
          [1650538315.675099][3678:3678] CHIP:DMG:                                 0x2 = 5,
          [1650538315.675159][3678:3678] CHIP:DMG:                         },
          [1650538315.675204][3678:3678] CHIP:DMG:                 },
          [1650538315.675246][3678:3678] CHIP:DMG:
          [1650538315.675289][3678:3678] CHIP:DMG:         ],
          [1650538315.675327][3678:3678] CHIP:DMG:
          [1650538315.675368][3678:3678] CHIP:DMG:         InteractionModelRevision = 1
          [1650538315.675398][3678:3678] CHIP:DMG: },
          [1650538315.675497][3678:3678] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0006 e=1 p=o
          [1650538315.675541][3678:3678] CHIP:DMG: AccessControl: allowed
          [1650538315.675584][3678:3678] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0042
          [1650538315.675646][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d11998
          [1650538315.675701][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d11999
          [1650538315.675732][3678:3678] CHIP:ZCL: On/Off set value: 1 1
          [1650538315.675759][3678:3678] CHIP:ZCL: Toggle on/off from 0 to 1
          [1650538315.675800][3678:3678] CHIP:DMG: Endpoint 1, Cluster 0x0000_0006 update version to a5d1199a
      disabled: true
