# 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: 119.2.1. [TC-BIND-2.1] Binding Cluster Attributes-Node [DUT-Controller]

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

tests:
    - label: "Factory Reset DUT"
      verification: |
          Vendor specific action, for chip-tool run
          rm -rf /tmp/chip*
      disabled: true

    - label: "Commission DUT to TH1s fabric"
      verification: |
          ./chip-tool pairing onnetwork 1 20202021
      disabled: true

    - label: "Commission TH2 to TH1s fabric (Node ID = 2)"
      verification: |
          ./chip-tool pairing ble-wifi 2 chipsetup4 matter123 20202021 3840
      disabled: true

    - label: "Commission TH3 to TH1s fabric (Node ID = 3)"
      verification: |
          ./chip-tool pairing ble-wifi 3 chipsetup4 matter123 20202021 3841
      disabled: true

    - label:
          "TH1 writes Binding entries into DUT on the endpoint with the On/Off
          client with Entry 1: Node = 2 Cluster = 0x0006(onoff) Endpoint = 1
          Entry 2: Node = 3 Cluster = 0x0006(onoff) Endpoint = 2 Note: Node 2
          corresponds to TH2s Node ID Node 3 corresponds to TH3s Node ID"
      verification: |
          ./chip-tool binding write binding "[{"node" : 2 , "cluster" : "0x0006" , "endpoint" : 1 }, { "node" : 3 , "cluster" : "0x0006" , "endpoint" : 2  }]" 1 1




          [1657797710.456056][3796:3801] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          MG:                                 status = 0x00 (SUCCESS),
          [1657797710.457093][3796:3801] CHIP:DMG:                         },
          [1657797710.457171][3796:3801] CHIP:DMG:
          [1657797710.457232][3796:3801] CHIP:DMG:                 },
          [1657797710.457318][3796:3801] CHIP:DMG:
          [1               StatusIB =
          [1657797710.458209][3796:3801] CHIP:DMG:                         {
          [1657797710.458286][3796:3801] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1657797710.458369][3796:3801] CHIP:DMG:                         },
          [1657797710.458444][3796:3801] CHIP:DMG:
              pted msg 0xffff7e7cd9d8 with MessageCounter:161235290 to 0x0000000000000001 (1) at monotonic time: 000000000071D1BB msec
          [1657797710.459711][3796:3801] CHIP:EM: Flushed pending ack for MessageCounter:23683634 on exchange 26818i
      disabled: true

    - label: "TH1 enables DUT as Controller"
      verification: |
          verification step to be updated.
      disabled: true

    - label: "DUT is triggered to send On command to its binding node entries"
      PICS: OO.C.C01.Tx
      verification: |
          ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1], "targets": [{"cluster": 6, "endpoint": 1, "deviceType": null}]}]" 2 0

          [1652330385.328196][3240:3245] CHIP:DMG:                        StatusIB =
          [1652330385.328229][3240:3245] CHIP:DMG:                        {
          [1652330385.328264][3240:3245] CHIP:DMG:                                status = 0x00 (SUCCESS),
          [1652330385.328298][3240:3245] CHIP:DMG:                        },


          ./chip-tool accesscontrol write acl "[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1], "targets": [{"cluster": 6, "endpoint": 1, "deviceType": null}]}]" 3 0

          [1650610345.847274][2626:2631] CHIP:DMG:                                StatusIB =
          [1650610345.847317][2626:2631] CHIP:DMG:                                {
          [1650610345.847383][2626:2631] CHIP:DMG:                                        status = 0x00 (SUCCESS),
          [1650610345.847429][2626:2631] CHIP:DMG:                                },

          DUT sends on command in the shell

          > switch on
          [1658837711.917557][4764:4764] CHIP:DMG: ICR moving to [AddingComm]
          [1658837711.917653][4764:4764] CHIP:DMG: ICR moving to [AddedComma]
          [1658837711.917869][4764:4764] CHIP:IN: Prepared secure message 0xaaaaf8a908f8 to 0x0000000000000046 (1)  of type 0x8 and protocolId (0, 1) on exchange 5086i with MessageCounter:188042572.
          [1658837711.917966][4764:4764] CHIP:IN: Sending encrypted msg 0xaaaaf8a908f8 with MessageCounter:188042572 to 0x0000000000000046 (1) at monotonic time: 0000000001828F3D msec
          [1658837711.918320][4764:4764] CHIP:DMG: ICR moving to [CommandSen]
          [1658837711.918428][4764:4764] CHIP:DMG: ICR moving to [AddingComm]
          [1658837711.918496][4764:4764] CHIP:DMG: ICR moving to [AddedComma]
          [1658837711.918633][4764:4764] CHIP:IN: Prepared secure message 0xaaaaf8a733a8 to 0x0000000000000258 (1)  of type 0x8 and protocolId (0, 1) on exchange 5087i with MessageCounter:70524918.
          [1658837711.918720][4764:4764] CHIP:IN: Sending encrypted msg 0xaaaaf8a733a8 with MessageCounter:70524918 to 0x0000000000000258 (1) at monotonic time: 0000000001828F3E msec
          [1658837711.919011][4764:4764] CHIP:DMG: ICR moving to [CommandSen]
          Done
          > [1658837711.920333][4764:4764] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:225570715 on exchange 5086i
          [1658837711.920409][4764:4764] CHIP:EM: Found matching exchange: 5086i, Delegate: 0xaaaaf8a90220
          [1658837711.920490][4764:4764] CHIP:EM: Rxd Ack; Removing MessageCounter:188042572 from Retrans Table on exchange 5086i
          [1658837711.920598][4764:4764] CHIP:EM: Removed CHIP MessageCounter:188042572 from RetransTable on exchange 5086i
          [1658837711.920673][4764:4764] CHIP:DMG: ICR moving to [ResponseRe]
          [1658837711.920777][4764:4764] CHIP:DMG: InvokeResponseMessage =
          [1658837711.920837][4764:4764] CHIP:DMG: {
          [1658837711.920894][4764:4764] CHIP:DMG:        suppressResponse = false,
          [1658837711.920954][4764:4764] CHIP:DMG:        InvokeResponseIBs =
          [1658837711.921030][4764:4764] CHIP:DMG:        [
          [1658837711.921089][4764:4764] CHIP:DMG:                InvokeResponseIB =
          [1658837711.921166][4764:4764] CHIP:DMG:                {
          [1658837711.921229][4764:4764] CHIP:DMG:                        CommandStatusIB =
          [1658837711.921309][4764:4764] CHIP:DMG:                        {
          [1658837711.921380][4764:4764] CHIP:DMG:                                CommandPathIB =
          [1658837711.921462][4764:4764] CHIP:DMG:                                {
          [1658837711.921543][4764:4764] CHIP:DMG:                                        EndpointId = 0x1,
          [1658837711.921630][4764:4764] CHIP:DMG:                                        ClusterId = 0x6,
          [1658837711.921714][4764:4764] CHIP:DMG:                                        CommandId = 0x1,
          [1658837711.921801][4764:4764] CHIP:DMG:                                },
          [1658837711.921889][4764:4764] CHIP:DMG:
          [1658837711.921961][4764:4764] CHIP:DMG:                                StatusIB =
          [1658837711.922050][4764:4764] CHIP:DMG:                                {
          [1658837711.922139][4764:4764] CHIP:DMG:                                        status = 0x00 (SUCCESS),
          [1658837711.922222][4764:4764] CHIP:DMG:                                },
          [1658837711.922301][4764:4764] CHIP:DMG:
          [1658837711.922374][4764:4764] CHIP:DMG:                        },
          [1658837711.922456][4764:4764] CHIP:DMG:
          [1658837711.922522][4764:4764] CHIP:DMG:                },
          [1658837711.922596][4764:4764] CHIP:DMG:
          [1658837711.922654][4764:4764] CHIP:DMG:        ],
          [1658837711.922726][4764:4764] CHIP:DMG:
          [1658837711.922786][4764:4764] CHIP:DMG:        InteractionModelRevision = 1
          [1658837711.922844][4764:4764] CHIP:DMG: },
          [1658837711.922978][4764:4764] CHIP:DMG: Received Command Response Status for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0001 Status=0x0
          [1658837711.923042][4764:4764] CHIP:-: OnOff command succeeds
          [1658837711.923125][4764:4764] CHIP:DMG: ICR moving to [AwaitingDe]
          [1658837711.923188][4764:4764] CHIP:EM: Sending Standalone Ack for MessageCounter:225570715 on exchange 5086i
          [1658837711.923300][4764:4764] CHIP:IN: Prepared secure message 0xffffc33c53d8 to 0x0000000000000046 (1)  of type 0x10 and protocolId (0, 0) on exchange 5086i with MessageCounter:188042573.
          [1658837711.923385][4764:4764] CHIP:IN: Sending encrypted msg 0xffffc33c53d8 with MessageCounter:188042573 to 0x0000000000000046 (1) at monotonic time: 0000000001828F42 msec
          [1658837711.923572][4764:4764] CHIP:EM: Flushed pending ack for MessageCounter:225570715 on exchange 5086i
          [1658837711.926330][4764:4764] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:32223638 on exchange 5087i
          [1658837711.926404][4764:4764] CHIP:EM: Found matching exchange: 5087i, Delegate: 0xaaaaf8a8bb70
          [1658837711.926475][4764:4764] CHIP:EM: Rxd Ack; Removing MessageCounter:70524918 from Retrans Table on exchange 5087i
          [1658837711.926534][4764:4764] CHIP:EM: Removed CHIP MessageCounter:70524918 from RetransTable on exchange 5087i
          [1658837711.926599][4764:4764] CHIP:DMG: ICR moving to [ResponseRe]
          [1658837711.926687][4764:4764] CHIP:DMG: InvokeResponseMessage =
          [1658837711.926744][4764:4764] CHIP:DMG: {
          [1658837711.926800][4764:4764] CHIP:DMG:        suppressResponse = false,
          [1658837711.926859][4764:4764] CHIP:DMG:        InvokeResponseIBs =
          [1658837711.926932][4764:4764] CHIP:DMG:        [
          [1658837711.926991][4764:4764] CHIP:DMG:                InvokeResponseIB =
          [1658837711.927066][4764:4764] CHIP:DMG:                {
          [1658837711.927128][4764:4764] CHIP:DMG:                        CommandStatusIB =
          [1658837711.927310][4764:4764] CHIP:DMG:                        {
          [1658837711.927388][4764:4764] CHIP:DMG:                                CommandPathIB =
          [1658837711.927469][4764:4764] CHIP:DMG:                                {
          [1658837711.927551][4764:4764] CHIP:DMG:                                        EndpointId = 0x1,
          [1658837711.927638][4764:4764] CHIP:DMG:                                        ClusterId = 0x6,
          [1658837711.927722][4764:4764] CHIP:DMG:                                        CommandId = 0x1,
          [1658837711.927802][4764:4764] CHIP:DMG:                                },
          [1658837711.927897][4764:4764] CHIP:DMG:
          [1658837711.927970][4764:4764] CHIP:DMG:                                StatusIB =
          [1658837711.928057][4764:4764] CHIP:DMG:                                {
          [1658837711.928145][4764:4764] CHIP:DMG:                                        status = 0x00 (SUCCESS),
          [1658837711.928222][4764:4764] CHIP:DMG:                                },
          [1658837711.928303][4764:4764] CHIP:DMG:
          [1658837711.928373][4764:4764] CHIP:DMG:                        },
          [1658837711.928453][4764:4764] CHIP:DMG:
          [1658837711.928515][4764:4764] CHIP:DMG:                },
          [1658837711.928625][4764:4764] CHIP:DMG:
          [1658837711.928686][4764:4764] CHIP:DMG:        ],
          [1658837711.928757][4764:4764] CHIP:DMG:
          [1658837711.928816][4764:4764] CHIP:DMG:        InteractionModelRevision = 1
          [1658837711.928873][4764:4764] CHIP:DMG: },
          [1658837711.928983][4764:4764] CHIP:DMG: Received Command Response Status for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0001 Status=0x0
          [1658837711.929015][4764:4764] CHIP:-: OnOff command succeeds
          [1658837711.929055][4764:4764] CHIP:DMG: ICR moving to [AwaitingDe]
          [1658837711.929134][4764:4764] CHIP:EM: Sending Standalone Ack for MessageCounter:32223638 on exchange 5087i
          [1658837711.929198][4764:4764] CHIP:IN: Prepared secure message 0xffffc33c53d8 to 0x0000000000000258 (1)  of type 0x10 and protocolId (0, 0) on exchange 5087i with MessageCounter:70524919.
          [1658837711.929241][4764:4764] CHIP:IN: Sending encrypted msg 0xffffc33c53d8 with MessageCounter:70524919 to 0x0000000000000258 (1) at monotonic time: 0000000001828F48 msec
          [1658837711.929336][4764:4764] CHIP:EM: Flushed pending ack for MessageCounter:32223638 on exchange 5087i
      disabled: true

    - label: "TH1 reads OnOff attribute from TH2 (Endpoint 1)"
      PICS: OO.C.C01.Tx
      verification: |
          ./chip-tool onoff read on-off 2 1

          [1657798291.396477][3835:3841] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 4260513117
          [1657798291.396514][3835:3841] CHIP:TOO:   OnOff: TRUE

          ./chip-tool onoff read on-off 3 2

          [1657798691.194894][3869:3874] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 470320746
          [1657798691.194948][3869:3874] CHIP:TOO:   OnOff: TRUE
      disabled: true

    - label: "TH1 removes second binding entry corresponding to TH3 from DUT"
      verification: |
          ./chip-tool binding write binding "[{"node" : 2 , "cluster" : "0x0006" , "endpoint" : 1 }]" 1 1

          [1657800844.739833][4000:4006] CHIP:EM: Removed CHIP MessageCounter:244702117 from RetransTable on exchange 12653i
          [1657800844.739867][4000:4006] CHIP:DMG: WriteClient moving to [ResponseRe]
          [1657800844.739922][4000:4006] CHIP:DMG: WriteResponseMessage =
          [1657800844.739949][4000:4006] CHIP:DMG: {
          [1657800844.739990][4000:4006] CHIP:DMG:         AttributeStatusIBs =
          [1657800844.740021][4000:4006] CHIP:DMG:         [
          [1657800844.740057][4000:4006] CHIP:DMG:                 AttributeStatusIB =
          [1657800844.740111][4000:4006] CHIP:DMG:                 {
          [1657800844.740150][4000:4006] CHIP:DMG:                         AttributePathIB =
          [1657800844.740195][4000:4006] CHIP:DMG:                         {
          [1657800844.740230][4000:4006] CHIP:DMG:                                 Endpoint = 0x0,
          [1657800844.740275][4000:4006] CHIP:DMG:                                 Cluster = 0x1e,
          [1657800844.740322][4000:4006] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1657800844.740359][4000:4006] CHIP:DMG:                         }
          [1657800844.740405][4000:4006] CHIP:DMG:
          [1657800844.740444][4000:4006] CHIP:DMG:                         StatusIB =
          [1657800844.740477][4000:4006] CHIP:DMG:                         {
          [1657800844.740516][4000:4006] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1657800844.740548][4000:4006] CHIP:DMG:                         },
          [1657800844.740584][4000:4006] CHIP:DMG:
          [1657800844.740607][4000:4006] CHIP:DMG:                 },
          [1657800844.740653][4000:4006] CHIP:DMG:
          [1657800844.740687][4000:4006] CHIP:DMG:                 AttributeStatusIB =
          [1657800844.740714][4000:4006] CHIP:DMG:                 {
          [1657800844.740748][4000:4006] CHIP:DMG:                         AttributePathIB =
          [1657800844.740781][4000:4006] CHIP:DMG:                         {
          [1657800844.740820][4000:4006] CHIP:DMG:                                 Endpoint = 0x0,
          [1657800844.740858][4000:4006] CHIP:DMG:                                 Cluster = 0x1e,
          [1657800844.740905][4000:4006] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1657800844.740946][4000:4006] CHIP:DMG:                                 ListIndex = Null,
          [1657800844.740981][4000:4006] CHIP:DMG:                         }
          [1657800844.741025][4000:4006] CHIP:DMG:
          [1657800844.741063][4000:4006] CHIP:DMG:                         StatusIB =
          [1657800844.741094][4000:4006] CHIP:DMG:                         {
          [1657800844.741133][4000:4006] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1657800844.741168][4000:4006] CHIP:DMG:                         },
          [1657800844.741208][4000:4006] CHIP:DMG:
          [1657800844.741241][4000:4006] CHIP:DMG:                 },
          [1657800844.741272][4000:4006] CHIP:DMG:
          [1657800844.741295][4000:4006] CHIP:DMG:         ],
          [1657800844.741336][4000:4006] CHIP:DMG:
          [1657800844.741369][4000:4006] CHIP:DMG:         InteractionModelRevision = 1
          [1657800844.741392][4000:4006] CHIP:DMG: }
          [1657800844.741511][4000:4006] CHIP:DMG: WriteClient moving to [AwaitingDe]
          [1657800844.741591][4000:4006] CHIP:EM: Sending Standalone Ack for MessageCounter:142199059 on exchange 12653i
      disabled: true

    - label: "DUT is triggered to send off command to its binding entries"
      PICS: OO.C.C00.Tx
      verification: |
          DUT sends off command in the shell

          > switch off
          [1658838896.810567][4764:4764] CHIP:DMG: ICR moving to [AddingComm]
          [1658838896.810692][4764:4764] CHIP:DMG: ICR moving to [AddedComma]
          [1658838896.810911][4764:4764] CHIP:IN: Prepared secure message 0xaaaaf8a8c0e8 to 0x0000000000000046 (1)  of type 0x8 and protocolId (0, 1) on exchange 5088i with MessageCounter:188042574.
          [1658838896.811035][4764:4764] CHIP:IN: Sending encrypted msg 0xaaaaf8a8c0e8 with MessageCounter:188042574 to 0x0000000000000046 (1) at monotonic time: 000000000194A3BA msec
          [1658838896.811427][4764:4764] CHIP:DMG: ICR moving to [CommandSen]
          Done
          > [1658838896.817922][4764:4764] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:225570716 on exchange 5088i
          [1658838896.817984][4764:4764] CHIP:EM: Found matching exchange: 5088i, Delegate: 0xaaaaf8a90220
          [1658838896.818042][4764:4764] CHIP:EM: Rxd Ack; Removing MessageCounter:188042574 from Retrans Table on exchange 5088i
          [1658838896.818087][4764:4764] CHIP:EM: Removed CHIP MessageCounter:188042574 from RetransTable on exchange 5088i
          [1658838896.818140][4764:4764] CHIP:DMG: ICR moving to [ResponseRe]
          [1658838896.818241][4764:4764] CHIP:DMG: InvokeResponseMessage =
          [1658838896.818287][4764:4764] CHIP:DMG: {
          [1658838896.818344][4764:4764] CHIP:DMG:        suppressResponse = false,
          [1658838896.818391][4764:4764] CHIP:DMG:        InvokeResponseIBs =
          [1658838896.818463][4764:4764] CHIP:DMG:        [
          [1658838896.818508][4764:4764] CHIP:DMG:                InvokeResponseIB =
          [1658838896.818581][4764:4764] CHIP:DMG:                {
          [1658838896.818629][4764:4764] CHIP:DMG:                        CommandStatusIB =
          [1658838896.818699][4764:4764] CHIP:DMG:                        {
          [1658838896.818759][4764:4764] CHIP:DMG:                                CommandPathIB =
          [1658838896.818836][4764:4764] CHIP:DMG:                                {
          [1658838896.818915][4764:4764] CHIP:DMG:                                        EndpointId = 0x1,
          [1658838896.819001][4764:4764] CHIP:DMG:                                        ClusterId = 0x6,
          [1658838896.819068][4764:4764] CHIP:DMG:                                        CommandId = 0x0,
          [1658838896.819144][4764:4764] CHIP:DMG:                                },
          [1658838896.819227][4764:4764] CHIP:DMG:
          [1658838896.819285][4764:4764] CHIP:DMG:                                StatusIB =
          [1658838896.819347][4764:4764] CHIP:DMG:                                {
          [1658838896.819408][4764:4764] CHIP:DMG:                                        status = 0x00 (SUCCESS),
          [1658838896.819474][4764:4764] CHIP:DMG:                                },
          [1658838896.819535][4764:4764] CHIP:DMG:
          [1658838896.819588][4764:4764] CHIP:DMG:                        },
          [1658838896.819650][4764:4764] CHIP:DMG:
          [1658838896.819700][4764:4764] CHIP:DMG:                },
          [1658838896.819759][4764:4764] CHIP:DMG:
          [1658838896.819803][4764:4764] CHIP:DMG:        ],
          [1658838896.819856][4764:4764] CHIP:DMG:
          [1658838896.819900][4764:4764] CHIP:DMG:        InteractionModelRevision = 1
          [1658838896.819943][4764:4764] CHIP:DMG: },
          [1658838896.820047][4764:4764] CHIP:DMG: Received Command Response Status for Endpoint=1 Cluster=0x0000_0006 Command=0x0000_0000 Status=0x0
          [1658838896.820095][4764:4764] CHIP:-: OnOff command succeeds
      disabled: true

    - label: "TH1 reads OnOff attribute from TH2 (Endpoint 1)"
      PICS: OO.C.C00.Tx
      verification: |
          ./chip-tool onoff read on-off  2 1


          [1657803168.769564][4272:4277] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 1968648540

          [1657803168.769598][4272:4277] CHIP:TOO:   OnOff: FALSE
      disabled: true

    - label: "TH1 reads OnOff attribute from TH3 (Endpoint 2)"
      PICS: OO.C.C01.Tx
      verification: |
          ./chip-tool onoff read on-off 3 2

          [1657803609.731464][4333:4339] CHIP:TOO: Endpoint: 2 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 3914456390

          [1657803609.731521][4333:4339] CHIP:TOO:   OnOff: TRUE
      disabled: true
