# 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.1.1. [TC-BR-1] Basics of Bridging

PICS:
    - MCORE.BRIDGE

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

tests:
    - label:
          "Read attribute DeviceTypeList of the Descriptor cluster on endpoint 0"
      PICS: MCORE.BRIDGE
      verification: |
          ./chip-tool  descriptor read device-list 1 0

          Verify device type Root Node(Type-22) contains in TH Log

          [1657002174.323780][3885:3890] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3573910940
          [1657002174.323838][3885:3890] CHIP:TOO:   device list: 1 entries
          [1657002174.323919][3885:3890] CHIP:TOO:     [1]: {
          [1657002174.323961][3885:3890] CHIP:TOO:       Type: 22
          [1657002174.323989][3885:3890] CHIP:TOO:       Revision: 1
          [1657002174.324016][3885:3890] CHIP:TOO:      }
      disabled: true

    - label: "Read attribute PartsList of the Descriptor cluster on endpoint 0"
      verification: |
          ./chip-tool  descriptor read parts-list 1 0

          Verify the endpoints listed in TH Log

          [1657002201.045720][3893:3899] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 3573910940
          [1657002201.045841][3893:3899] CHIP:TOO:   parts list: 12 entries
          [1657002201.045887][3893:3899] CHIP:TOO:     [1]: 1
          [1657002201.045925][3893:3899] CHIP:TOO:     [2]: 3
          [1657002201.045963][3893:3899] CHIP:TOO:     [3]: 4
          [1657002201.046000][3893:3899] CHIP:TOO:     [4]: 5
          [1657002201.046037][3893:3899] CHIP:TOO:     [5]: 6
          [1657002201.046073][3893:3899] CHIP:TOO:     [6]: 7
          [1657002201.046110][3893:3899] CHIP:TOO:     [7]: 8
          [1657002201.046147][3893:3899] CHIP:TOO:     [8]: 9
          [1657002201.046184][3893:3899] CHIP:TOO:     [9]: 10
          [1657002201.046221][3893:3899] CHIP:TOO:     [10]: 11
          [1657002201.046259][3893:3899] CHIP:TOO:     [11]: 12
          [1657002201.046296][3893:3899] CHIP:TOO:     [12]: 13
      disabled: true

    - label:
          "For each of the endpoints read in step 1b, read attribute
          DeviceTypeList of the Descriptor cluster on that endpoint"
      verification: |
          Verify in which of the following read device-list attribute contains device type Aggregator (Type- 14)

          ./chip-tool  descriptor read device-list 1 1

          Verify in TH Log

          [1657002313.871608][3977:3982] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3021853414
          [1657002313.871680][3977:3982] CHIP:TOO:   device list: 1 entries
          [1657002313.871740][3977:3982] CHIP:TOO:     [1]: {
          [1657002313.871788][3977:3982] CHIP:TOO:       Type: 14
          [1657002313.871821][3977:3982] CHIP:TOO:       Revision: 1
          [1657002313.871852][3977:3982] :TOOCHIP:      }


          ./chip-tool  descriptor read device-list 1 3

          Verify in TH Log

          [1657002329.438065][3983:3988] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2452512872
          [1657002329.438135][3983:3988] CHIP:TOO:   device list: 2 entries
          [1657002329.438193][3983:3988] CHIP:TOO:     [1]: {
          [1657002329.438238][3983:3988] CHIP:TOO:       Type: 256
          [1657002329.438269][3983:3988] CHIP:TOO:       Revision: 1
          [1657002329.438298][3983:3988] CHIP:TOO:      }
          [1657002329.438332][3983:3988] CHIP:TOO:     [2]: {
          [1657002329.438360][3983:3988] CHIP:TOO:       Type: 19
          [1657002329.438389][3983:3988] CHIP:TOO:       Revision: 1
          [1657002329.438416][3983:3988] CHIP:TOO:      }


          ./chip-tool  descriptor read device-list 1 4

          Verify in TH Log

          [1659351082.975711][12107:12112] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3999956962
          [1659351082.975821][12107:12112] CHIP:TOO:   device list: 2 entries
          [1659351082.975883][12107:12112] CHIP:TOO:     [1]: {
          [1659351082.975929][12107:12112] CHIP:TOO:       Type: 770
          [1659351082.975973][12107:12112] CHIP:TOO:       Revision: 1
          [1659351082.976015][12107:12112] CHIP:TOO:      }
          [1659351082.976066][12107:12112] CHIP:TOO:     [2]: {
          [1659351082.976109][12107:12112] CHIP:TOO:       Type: 19
          [1659351082.976150][12107:12112] CHIP:TOO:       Revision: 1
          [1659351082.976191][12107:12112] CHIP:TOO:      }




          ./chip-tool  descriptor read device-list 1 5

          Verify in TH Log

          [1659351100.369601][12113:12118] CHIP:TOO: Endpoint: 5 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3187411685
          [1659351100.369695][12113:12118] CHIP:TOO:   device list: 2 entries
          [1659351100.369746][12113:12118] CHIP:TOO:     [1]: {
          [1659351100.369781][12113:12118] CHIP:TOO:       Type: 770
          [1659351100.369816][12113:12118] CHIP:TOO:       Revision: 1
          [1659351100.369849][12113:12118] CHIP:TOO:      }
          [1659351100.369889][12113:12118] CHIP:TOO:     [2]: {
          [1659351100.369923][12113:12118] CHIP:TOO:       Type: 19
          [1659351100.369955][12113:12118] CHIP:TOO:       Revision: 1
          [1659351100.369988][12113:12118] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 6

          Verify in TH Log


          [1659351102.837218][12119:12124] CHIP:TOO: Endpoint: 6 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1173571869
          [1659351102.837357][12119:12124] CHIP:TOO:   device list: 1 entries
          [1659351102.837437][12119:12124] CHIP:TOO:     [1]: {
          [1659351102.837496][12119:12124] CHIP:TOO:       Type: 19
          [1659351102.837554][12119:12124] CHIP:TOO:       Revision: 1
          [1659351102.837610][12119:12124] CHIP:TOO:      }
          [1659351102.837789][12119:12124] CHIP:EM: Sending Standalone Ack for MessageCounter:92381172 on exchange 45312i




          ./chip-tool  descriptor read device-list 1 7

          Verify in TH Log

          [1659351105.133982][12125:12130] CHIP:TOO: Endpoint: 7 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1309892739
          [1659351105.134087][12125:12130] CHIP:TOO:   device list: 1 entries
          [1659351105.134148][12125:12130] CHIP:TOO:     [1]: {
          [1659351105.134192][12125:12130] CHIP:TOO:       Type: 770
          [1659351105.134236][12125:12130] CHIP:TOO:       Revision: 1
          [1659351105.134277][12125:12130] CHIP:TOO:      }
          [1659351105.134419][12125:12130] CHIP:EM: Sending Standalone Ack for MessageCounter:88821004 on exchange 41639i




          ./chip-tool  descriptor read device-list 1 8

          Verify in TH Log

          [1659351107.202771][12131:12136] CHIP:TOO: Endpoint: 8 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 929721508
          [1659351107.202850][12131:12136] CHIP:TOO:   device list: 1 entries
          [1659351107.202887][12131:12136] CHIP:TOO:     [1]: {
          [1659351107.202912][12131:12136] CHIP:TOO:       Type: 770
          [1659351107.202937][12131:12136] CHIP:TOO:       Revision: 1
          [1659351107.202961][12131:12136] CHIP:TOO:      }
          [1659351107.203062][12131:12136] CHIP:EM: Sending Standalone Ack for MessageCounter:193017490 on exchange 10260i




          ./chip-tool  descriptor read device-list 1 9

          Verify in TH Log

          [1657002455.445818][4040:4045] CHIP:TOO: Endpoint: 9 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 913116116
          [1657002455.445883][4040:4045] CHIP:TOO:   device list: 1 entries
          [1657002455.445944][4040:4045] CHIP:TOO:     [1]: {
          [1657002455.445991][4040:4045] CHIP:TOO:       Type: 17
          [1657002455.446025][4040:4045] CHIP:TOO:       Revision: 1
          [1657002455.446056][4040:4045] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 10

          Verify in TH Log

          [1657002473.100910][4047:4052] CHIP:TOO: Endpoint: 10 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 259205426
          [1657002473.100967][4047:4052] CHIP:TOO:   device list: 2 entries
          [1657002473.101013][4047:4052] CHIP:TOO:     [1]: {
          [1657002473.101051][4047:4052] CHIP:TOO:       Type: 256
          [1657002473.101076][4047:4052] CHIP:TOO:       Revision: 1
          [1657002473.101098][4047:4052] CHIP:TOO:      }
          [1657002473.101126][4047:4052] CHIP:TOO:     [2]: {
          [1657002473.101148][4047:4052] CHIP:TOO:       Type: 19
          [1657002473.101170][4047:4052] CHIP:TOO:       Revision: 1
          [1657002473.101192][4047:4052] CHIP:TOO:      }


          ./chip-tool  descriptor read device-list 1 11

          Verify in TH Log

          [1657002495.856770][4061:4066] CHIP:TOO: Endpoint: 11 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 4248421677
          [1657002495.856836][4061:4066] CHIP:TOO:   device list: 2 entries
          [1657002495.856893][4061:4066] CHIP:TOO:     [1]: {
          [1657002495.856938][4061:4066] CHIP:TOO:       Type: 256
          [1657002495.856968][4061:4066] CHIP:TOO:       Revision: 1
          [1657002495.856996][4061:4066] CHIP:TOO:      }
          [1657002495.857030][4061:4066] CHIP:TOO:     [2]: {
          [1657002495.857058][4061:4066] CHIP:TOO:       Type: 19
          [1657002495.857085][4061:4066] CHIP:TOO:       Revision: 1
          [1657002495.857112][4061:4066] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 12

          Verify in TH Log

          [1657002515.862187][4073:4078] CHIP:TOO: Endpoint: 12 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2731599835
          [1657002515.862249][4073:4078] CHIP:TOO:   device list: 2 entries
          [1657002515.862302][4073:4078] CHIP:TOO:     [1]: {
          [1657002515.862343][4073:4078] CHIP:TOO:       Type: 256
          [1657002515.862372][4073:4078] CHIP:TOO:       Revision: 1
          [1657002515.862398][4073:4078] CHIP:TOO:      }
          [1657002515.862429][4073:4078] CHIP:TOO:     [2]: {
          [1657002515.862455][4073:4078] CHIP:TOO:       Type: 19
          [1657002515.862480][4073:4078] CHIP:TOO:       Revision: 1
          [1657002515.862504][4073:4078] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 13

          Verify in TH Log

          [1657002538.134605][4097:4102] CHIP:TOO: Endpoint: 13 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3449178249
          [1657002538.134700][4097:4102] CHIP:TOO:   device list: 2 entries
          [1657002538.134784][4097:4102] CHIP:TOO:     [1]: {
          [1657002538.134869][4097:4102] CHIP:TOO:       Type: 256
          [1657002538.134916][4097:4102] CHIP:TOO:       Revision: 1
          [1657002538.134973][4097:4102] CHIP:TOO:      }
          [1657002538.135025][4097:4102] CHIP:TOO:     [2]: {
          [1657002538.135083][4097:4102] CHIP:TOO:       Type: 19
          [1657002538.135126][4097:4102] CHIP:TOO:       Revision: 1
          [1657002538.135166][4097:4102] CHIP:TOO:      }
      disabled: true

    - label:
          "Read attribute PartsList of the Descriptor cluster on endpoint found
          in step 1c"
      PICS: MCORE.BRIDGE
      verification: |
          Read parts-list with endpoint listed in 1c

          ./chip-tool  descriptor read parts-list 1 1

          Verify the list contains 11 entries in TH Log

          [1657002810.697118][4121:4126] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0003 DataVersion: 3021853414
          [1657002810.697276][4121:4126] CHIP:TOO:   parts list: 11 entries
          [1657002810.697312][4121:4126] CHIP:TOO:     [1]: 3
          [1657002810.697342][4121:4126] CHIP:TOO:     [2]: 4
          [1657002810.697370][4121:4126] CHIP:TOO:     [3]: 5
          [1657002810.697397][4121:4126] CHIP:TOO:     [4]: 6
          [1657002810.697425][4121:4126] CHIP:TOO:     [5]: 7
          [1657002810.697453][4121:4126] CHIP:TOO:     [6]: 8
          [1657002810.697480][4121:4126] CHIP:TOO:     [7]: 9
          [1657002810.697508][4121:4126] CHIP:TOO:     [8]: 10
          [1657002810.697536][4121:4126] CHIP:TOO:     [9]: 11
          [1657002810.697564][4121:4126] CHIP:TOO:     [10]: 12
          [1657002810.697592][4121:4126] CHIP:TOO:     [11]: 13
      disabled: true

    - label:
          "For each of the endpoints found in this PartsList attribute, read the
          DeviceTypeList attribute in the Descriptor cluster on such endpoint,
          and select those endpoints which have (at least) a device type of
          Bridged Node in their DeviceTypeList"
      verification: |
          Verify device type has either Bridged node (0x0013), i.e.,  Type=19

          Verify in TH Log

          ./chip-tool  descriptor read device-list 1 3
          [1657002843.395988][4135:4140] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2452512872
          [1657002843.396058][4135:4140] CHIP:TOO:   device list: 2 entries
          [1657002843.396112][4135:4140] CHIP:TOO:     [1]: {
          [1657002843.396154][4135:4140] CHIP:TOO:       Type: 256
          [1657002843.396204][4135:4140] CHIP:TOO:       Revision: 1
          [1657002843.396232][4135:4140] CHIP:TOO:      }
          [1657002843.396265][4135:4140] CHIP:TOO:     [2]: {
          [1657002843.396291][4135:4140] CHIP:TOO:       Type: 19
          [1657002843.396317][4135:4140] CHIP:TOO:       Revision: 1
          [1657002843.396342][4135:4140] CHIP:TOO:      }

           ./chip-tool  descriptor read device-list 1 4

          Verify in TH Log

          [1659351082.975711][12107:12112] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3999956962
          [1659351082.975821][12107:12112] CHIP:TOO:   device list: 2 entries
          [1659351082.975883][12107:12112] CHIP:TOO:     [1]: {
          [1659351082.975929][12107:12112] CHIP:TOO:       Type: 770
          [1659351082.975973][12107:12112] CHIP:TOO:       Revision: 1
          [1659351082.976015][12107:12112] CHIP:TOO:      }
          [1659351082.976066][12107:12112] CHIP:TOO:     [2]: {
          [1659351082.976109][12107:12112] CHIP:TOO:       Type: 19
          [1659351082.976150][12107:12112] CHIP:TOO:       Revision: 1
          [1659351082.976191][12107:12112] CHIP:TOO:      }




          ./chip-tool  descriptor read device-list 1 5

          Verify in TH Log

          [1659351100.369601][12113:12118] CHIP:TOO: Endpoint: 5 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3187411685
          [1659351100.369695][12113:12118] CHIP:TOO:   device list: 2 entries
          [1659351100.369746][12113:12118] CHIP:TOO:     [1]: {
          [1659351100.369781][12113:12118] CHIP:TOO:       Type: 770
          [1659351100.369816][12113:12118] CHIP:TOO:       Revision: 1
          [1659351100.369849][12113:12118] CHIP:TOO:      }
          [1659351100.369889][12113:12118] CHIP:TOO:     [2]: {
          [1659351100.369923][12113:12118] CHIP:TOO:       Type: 19
          [1659351100.369955][12113:12118] CHIP:TOO:       Revision: 1
          [1659351100.369988][12113:12118] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 6

          Verify in TH Log


          [1659351102.837218][12119:12124] CHIP:TOO: Endpoint: 6 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1173571869
          [1659351102.837357][12119:12124] CHIP:TOO:   device list: 1 entries
          [1659351102.837437][12119:12124] CHIP:TOO:     [1]: {
          [1659351102.837496][12119:12124] CHIP:TOO:       Type: 19
          [1659351102.837554][12119:12124] CHIP:TOO:       Revision: 1
          [1659351102.837610][12119:12124] CHIP:TOO:      }
          [1659351102.837789][12119:12124] CHIP:EM: Sending Standalone Ack for MessageCounter:92381172 on exchange 45312i




          ./chip-tool  descriptor read device-list 1 7

          Verify in TH Log

          [1659351105.133982][12125:12130] CHIP:TOO: Endpoint: 7 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 1309892739
          [1659351105.134087][12125:12130] CHIP:TOO:   device list: 1 entries
          [1659351105.134148][12125:12130] CHIP:TOO:     [1]: {
          [1659351105.134192][12125:12130] CHIP:TOO:       Type: 770
          [1659351105.134236][12125:12130] CHIP:TOO:       Revision: 1
          [1659351105.134277][12125:12130] CHIP:TOO:      }
          [1659351105.134419][12125:12130] CHIP:EM: Sending Standalone Ack for MessageCounter:88821004 on exchange 41639i




          ./chip-tool  descriptor read device-list 1 8

          Verify in TH Log

          [1659351107.202771][12131:12136] CHIP:TOO: Endpoint: 8 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 929721508
          [1659351107.202850][12131:12136] CHIP:TOO:   device list: 1 entries
          [1659351107.202887][12131:12136] CHIP:TOO:     [1]: {
          [1659351107.202912][12131:12136] CHIP:TOO:       Type: 770
          [1659351107.202937][12131:12136] CHIP:TOO:       Revision: 1
          [1659351107.202961][12131:12136] CHIP:TOO:      }
          [1659351107.203062][12131:12136] CHIP:EM: Sending Standalone Ack for MessageCounter:193017490 on exchange 10260i




          ./chip-tool  descriptor read device-list 1 9

          Verify in TH Log

          [1657002455.445818][4040:4045] CHIP:TOO: Endpoint: 9 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 913116116
          [1657002455.445883][4040:4045] CHIP:TOO:   device list: 1 entries
          [1657002455.445944][4040:4045] CHIP:TOO:     [1]: {
          [1657002455.445991][4040:4045] CHIP:TOO:       Type: 17
          [1657002455.446025][4040:4045] CHIP:TOO:       Revision: 1
          [1657002455.446056][4040:4045] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 10

          Verify in TH Log

          [1657002473.100910][4047:4052] CHIP:TOO: Endpoint: 10 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 259205426
          [1657002473.100967][4047:4052] CHIP:TOO:   device list: 2 entries
          [1657002473.101013][4047:4052] CHIP:TOO:     [1]: {
          [1657002473.101051][4047:4052] CHIP:TOO:       Type: 256
          [1657002473.101076][4047:4052] CHIP:TOO:       Revision: 1
          [1657002473.101098][4047:4052] CHIP:TOO:      }
          [1657002473.101126][4047:4052] CHIP:TOO:     [2]: {
          [1657002473.101148][4047:4052] CHIP:TOO:       Type: 19
          [1657002473.101170][4047:4052] CHIP:TOO:       Revision: 1
          [1657002473.101192][4047:4052] CHIP:TOO:      }


          ./chip-tool  descriptor read device-list 1 11

          Verify in TH Log

          [1657002495.856770][4061:4066] CHIP:TOO: Endpoint: 11 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 4248421677
          [1657002495.856836][4061:4066] CHIP:TOO:   device list: 2 entries
          [1657002495.856893][4061:4066] CHIP:TOO:     [1]: {
          [1657002495.856938][4061:4066] CHIP:TOO:       Type: 256
          [1657002495.856968][4061:4066] CHIP:TOO:       Revision: 1
          [1657002495.856996][4061:4066] CHIP:TOO:      }
          [1657002495.857030][4061:4066] CHIP:TOO:     [2]: {
          [1657002495.857058][4061:4066] CHIP:TOO:       Type: 19
          [1657002495.857085][4061:4066] CHIP:TOO:       Revision: 1
          [1657002495.857112][4061:4066] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 12

          Verify in TH Log

          [1657002515.862187][4073:4078] CHIP:TOO: Endpoint: 12 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2731599835
          [1657002515.862249][4073:4078] CHIP:TOO:   device list: 2 entries
          [1657002515.862302][4073:4078] CHIP:TOO:     [1]: {
          [1657002515.862343][4073:4078] CHIP:TOO:       Type: 256
          [1657002515.862372][4073:4078] CHIP:TOO:       Revision: 1
          [1657002515.862398][4073:4078] CHIP:TOO:      }
          [1657002515.862429][4073:4078] CHIP:TOO:     [2]: {
          [1657002515.862455][4073:4078] CHIP:TOO:       Type: 19
          [1657002515.862480][4073:4078] CHIP:TOO:       Revision: 1
          [1657002515.862504][4073:4078] CHIP:TOO:      }



          ./chip-tool  descriptor read device-list 1 13

          Verify in TH Log

          [1657002538.134605][4097:4102] CHIP:TOO: Endpoint: 13 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3449178249
          [1657002538.134700][4097:4102] CHIP:TOO:   device list: 2 entries
          [1657002538.134784][4097:4102] CHIP:TOO:     [1]: {
          [1657002538.134869][4097:4102] CHIP:TOO:       Type: 256
          [1657002538.134916][4097:4102] CHIP:TOO:       Revision: 1
          [1657002538.134973][4097:4102] CHIP:TOO:      }
          [1657002538.135025][4097:4102] CHIP:TOO:     [2]: {
          [1657002538.135083][4097:4102] CHIP:TOO:       Type: 19
          [1657002538.135126][4097:4102] CHIP:TOO:       Revision: 1
          [1657002538.135166][4097:4102] CHIP:TOO:      }
      disabled: true

    - label:
          "For each of the endpoints for the bridged devices found in step 2b,
          perform the tests for Bridged Device Basic Information cluster"
      PICS: MCORE.BRIDGE
      verification: |
          ref to test plan for Bridged Device Basic Information cluster(https://github.com/CHIP-Specifications/chip-test-plans/blob/master/src/cluster/bridged_device_basic_information.adoc)

           ./chip-tool bridgeddevicebasic read reachable 1 3

          Verify reachable attribute is read successfully in TH Log

          [1657003614.269096][4564:4569] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0039 Attribute 0x0000_0011 DataVersion: 1897994097
          [1657003614.269155][4564:4569] CHIP:TOO:   Reachable: TRUE

          ./chip-tool bridgeddevicebasic read node-label 1 4

          Verify Verify Node-label is read sucessfully in TH Log

          [1657003598.573764][4552:4557] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_0039 Attribute 0x0000_0005 DataVersion: 3722118563
          [1657003598.573811][4552:4557] CHIP:TOO:   NodeLabel: Switch 1
      disabled: true

    - label:
          "For each of the endpoints found in step 2b, if a Power Source
          Configuration cluster is present on this endpoint, perform the tests
          for this Power Source Configuration cluster plus the tests for the
          Power Source clusters at the endpoint(s) which this Power Source
          Configuration cluster refers to"
      PICS: MCORE.BRIDGE && MCORE.BRIDGE.BatInfo
      verification: |
          ref to test plan for Power Source Configuration and Power Source clusters

          None of the endpoints listed in step 2b supports Power Source Configuration cluster and Power Source cluster
      disabled: true

    - label:
          "For each of the endpoints found in step 2b, from the DeviceTypeList
          attribute in their Descriptor cluster, derive the (application) device
          type(s) of the bridged device"
      PICS: MCORE.BRIDGE
      verification: |
          Verify thedevice-list attribute has devicetype application 1.e, 0x0100 = 256(actuator),0x0302=770( temperature sensor)


          ./chip-tool descriptor read device-list 1 3

          Verify in TH Log

          [1657003925.553294][4664:4669] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2452512872
          [1657003925.553368][4664:4669] CHIP:TOO:   device list: 2 entries
          [1657003925.553430][4664:4669] CHIP:TOO:     [1]: {
          [1657003925.553492][4664:4669] CHIP:TOO:       Type: 256
          [1657003925.553527][4664:4669] CHIP:TOO:       Revision: 1
          [1657003925.553557][4664:4669] CHIP:TOO:      }
          [1657003925.553608][4664:4669] CHIP:TOO:     [2]: {
          [1657003925.553638][4664:4669] CHIP:TOO:       Type: 19
          [1657003925.553682][4664:4669] CHIP:TOO:       Revision: 1
          [1657003925.553714][4664:4669] CHIP:TOO:      }



          ./chip-tool descriptor read device-list 1 4

          Verify in TH Log

          [1659350396.878528][11929:11934] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3398096270
          [1659350396.878598][11929:11934] CHIP:TOO:   device list: 2 entries
          [1659350396.878635][11929:11934] CHIP:TOO:     [1]: {
          [1659350396.878661][11929:11934] CHIP:TOO:       Type: 770
          [1659350396.878688][11929:11934] CHIP:TOO:       Revision: 1
          [1659350396.878712][11929:11934] CHIP:TOO:      }
          [1659350396.878741][11929:11934] CHIP:TOO:     [2]: {
          [1659350396.878765][11929:11934] CHIP:TOO:       Type: 19
          [1659350396.878789][11929:11934] CHIP:TOO:       Revision: 1
          [1659350396.878812][11929:11934] CHIP:TOO:      }



          ./chip-tool descriptor read device-list 1 5

          Verify in TH Log

          [1659350678.671359][11991:11996] CHIP:TOO: Endpoint: 5 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3750503881
          [1659350678.671437][11991:11996] CHIP:TOO:   device list: 2 entries
          [1659350678.671475][11991:11996] CHIP:TOO:     [1]: {
          [1659350678.671500][11991:11996] CHIP:TOO:       Type: 770
          [1659350678.671525][11991:11996] CHIP:TOO:       Revision: 1
          [1659350678.671548][11991:11996] CHIP:TOO:      }
          [1659350678.671577][11991:11996] CHIP:TOO:     [2]: {
          [1659350678.671601][11991:11996] CHIP:TOO:       Type: 19
          [1659350678.671624][11991:11996] CHIP:TOO:       Revision: 1
          [1659350678.671647][11991:11996] CHIP:TOO:      }



          ./chip-tool descriptor read device-list 1 6

          Verify in TH Log

          [1659350682.392346][11997:12002] CHIP:TOO: Endpoint: 6 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2160703024
          [1659350682.392416][11997:12002] CHIP:TOO:   device list: 1 entries
          [1659350682.392455][11997:12002] CHIP:TOO:     [1]: {
          [1659350682.392481][11997:12002] CHIP:TOO:       Type: 19
          [1659350682.392507][11997:12002] CHIP:TOO:       Revision: 1
          [1659350682.392532][11997:12002] CHIP:TOO:      }
          [1659350682.392626][11997:12002] CHIP:EM: Sending Standalone Ack for MessageCounter:39744651 on exchange 45824i



          ./chip-tool descriptor read device-list 1 10

          Verify in TH Log

          [1657004074.939061][4704:4709] CHIP:TOO: Endpoint: 10 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 259205426
          [1657004074.939126][4704:4709] CHIP:TOO:   device list: 2 entries
          [1657004074.939178][4704:4709] CHIP:TOO:     [1]: {
          [1657004074.939221][4704:4709] CHIP:TOO:       Type: 256
          [1657004074.939250][4704:4709] CHIP:TOO:       Revision: 1
          [1657004074.939272][4704:4709] CHIP:TOO:      }
          [1657004074.939298][4704:4709] CHIP:TOO:     [2]: {
          [1657004074.939320][4704:4709] CHIP:TOO:       Type: 19
          [1657004074.939340][4704:4709] CHIP:TOO:       Revision: 1
          [1657004074.939361][4704:4709] CHIP:TOO:      }


          ./chip-tool descriptor read device-list 1 11

          Verify in TH Log

          [1657004114.075998][4725:4730] CHIP:TOO: Endpoint: 11 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 4248421677
          [1657004114.076073][4725:4730] CHIP:TOO:   device list: 2 entries
          [1657004114.076130][4725:4730] CHIP:TOO:     [1]: {
          [1657004114.076209][4725:4730] CHIP:TOO:       Type: 256
          [1657004114.076342][4725:4730] CHIP:TOO:       Revision: 1
          [1657004114.076372][4725:4730] CHIP:TOO:      }
          [1657004114.076407][4725:4730] CHIP:TOO:     [2]: {
          [1657004114.076435][4725:4730] CHIP:TOO:       Type: 19
          [1657004114.076474][4725:4730] CHIP:TOO:       Revision: 1
          [1657004114.076503][4725:4730] CHIP:TOO:      }


          ./chip-tool descriptor read device-list 1 12

          Verify in TH Log

          [1657004134.659723][4737:4742] CHIP:TOO: Endpoint: 12 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 2731599835
          [1657004134.659785][4737:4742] CHIP:TOO:   device list: 2 entries
          [1657004134.659835][4737:4742] CHIP:TOO:     [1]: {
          [1657004134.659875][4737:4742] CHIP:TOO:       Type: 256
          [1657004134.659901][4737:4742] CHIP:TOO:       Revision: 1
          [1657004134.659925][4737:4742] CHIP:TOO:      }
          [1657004134.659953][4737:4742] CHIP:TOO:     [2]: {
          [1657004134.659977][4737:4742] CHIP:TOO:       Type: 19
          [1657004134.660001][4737:4742] CHIP:TOO:       Revision: 1
          [1657004134.660023][4737:4742] CHIP:TOO:      }


          ./chip-tool descriptor read device-list 1 13

          Verify in TH Log

          [1657004152.758221][4749:4754] CHIP:TOO: Endpoint: 13 Cluster: 0x0000_001D Attribute 0x0000_0000 DataVersion: 3449178249
          [1657004152.758277][4749:4754] CHIP:TOO:   device list: 2 entries
          [1657004152.758323][4749:4754] CHIP:TOO:     [1]: {
          [1657004152.758359][4749:4754] CHIP:TOO:       Type: 256
          [1657004152.758384][4749:4754] CHIP:TOO:       Revision: 1
          [1657004152.758406][4749:4754] CHIP:TOO:      }
          [1657004152.758433][4749:4754] CHIP:TOO:     [2]: {
          [1657004152.758456][4749:4754] CHIP:TOO:       Type: 19
          [1657004152.758478][4749:4754] CHIP:TOO:       Revision: 1
          [1657004152.758500][4749:4754] CHIP:TOO:      }
      disabled: true

    - label:
          "From the list acquired in step 5, choose one of the bridged devices
          which is an actuator (e.g. light, window covering)"
      PICS: MCORE.BRIDGE
      verification: |
          Choose on-off cluster as the bridged devices which is an actuator
      disabled: true

    - label:
          "Read the state of this bridged device (through Matter), e.g. on/off,
          brightness"
      verification: |
          ./chip-tool onoff read on-off 1 3

          Verify the actual state of the bridged device in TH Log

          [1657004454.213279][4792:4798] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 3808303315
          [1657004454.213319][4792:4798] CHIP:TOO:   OnOff: FALSE
      disabled: true

    - label:
          "Change the state of this bridged device (through Matter), e.g. change
          its brightness or toggle its on/off state"
      verification: |
          ./chip-tool onoff toggle 1 3

          Verify On bridge-app

          [1657522278.538831][18140:18140] CHIP:DMG: Received command for Endpoint=3 Cluster=0x0000_0006 Command=0x0000_0002
          [1657522278.538861][18140:18140] CHIP:ZCL: On/Off set value: 3 2
          [1657522278.538887][18140:18140] CHIP:DL: HandleReadOnOffAttribute: attrId=0, maxReadLength=1
          [1657522278.538910][18140:18140] CHIP:ZCL: Toggle on/off from 0 to 1
          [1657522278.538936][18140:18140] CHIP:DL: HandleWriteOnOffAttribute: attrId=0
          [1657522278.538957][18140:18140] CHIP:DL: Device[Light 1]: ON


          Verify actual state of the bridged device changes accordingly in TH Log

          [1657522278.539407][16698:16703] CHIP:DMG: {
          [1657522278.539447][16698:16703] CHIP:DMG:         suppressResponse = false,
          [1657522278.539495][16698:16703] CHIP:DMG:         InvokeResponseIBs =
          [1657522278.539545][16698:16703] CHIP:DMG:         [
          [1657522278.539585][16698:16703] CHIP:DMG:                 InvokeResponseIB =
          [1657522278.539641][16698:16703] CHIP:DMG:                 {
          [1657522278.539688][16698:16703] CHIP:DMG:                         CommandStatusIB =
          [1657522278.539746][16698:16703] CHIP:DMG:                         {
          [1657522278.539795][16698:16703] CHIP:DMG:                                 CommandPathIB =
          [1657522278.539856][16698:16703] CHIP:DMG:                                 {
          [1657522278.539912][16698:16703] CHIP:DMG:                                         EndpointId = 0x3,
          [1657522278.539977][16698:16703] CHIP:DMG:                                         ClusterId = 0x6,
          [1657522278.540039][16698:16703] CHIP:DMG:                                         CommandId = 0x2,
          [1657522278.540097][16698:16703] CHIP:DMG:                                 },
          [1657522278.540162][16698:16703] CHIP:DMG:
          [1657522278.540214][16698:16703] CHIP:DMG:                                 StatusIB =
          [1657522278.540276][16698:16703] CHIP:DMG:                                 {
          [1657522278.540332][16698:16703] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1657522278.540386][16698:16703] CHIP:DMG:                                 },
          [1657522278.540446][16698:16703] CHIP:DMG:
          [1657522278.540499][16698:16703] CHIP:DMG:                         },
          [1657522278.540560][16698:16703] CHIP:DMG:
          [1657522278.540605][16698:16703] CHIP:DMG:                 },
          [1657522278.540658][16698:16703] CHIP:DMG:
          [1657522278.540696][16698:16703] CHIP:DMG:         ],
          [1657522278.540744][16698:16703] CHIP:DMG:
          [1657522278.540783][16698:16703] CHIP:DMG:         InteractionModelRevision = 1
          [1657522278.540825][16698:16703] CHIP:DMG: },
          [1657522278.540916][16698:16703] CHIP:DMG: Received Command Response Status for Endpoint=3 Cluster=0x0000_0006 Command=0x0000_0002 Status=0x0
          [1657522278.540981][16698:16703] CHIP:DMG: ICR moving to [AwaitingDe]
      disabled: true

    - label: "Read the state of this bridged device (through Matter), as in 6b"
      verification: |
          ./chip-tool onoff read on-off 1 3

          Verify the value of onoff matches the value of onoff in step 6c in TH Log

          [1657004565.254591][4804:4809] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0006 Attribute 0x0000_0000 DataVersion: 3808303316
          [1657004565.254635][4804:4809] CHIP:TOO:   OnOff: TRUE
      disabled: true

    - label:
          "From the list acquired in step 5, choose one of the bridged devices
          which is a sensor (e.g. occupancy sensor, contact sensor, temperature
          sensor)"
      PICS: MCORE.BRIDGE
      verification: |
          Choose a sensor device (e.g. temperature sensor, being added to bridge-app)
      disabled: true

    - label:
          "Read the state of this bridged device (through Matter), e.g.
          occupancy status, contact status, current temperature"
      verification: |
          ./chip-tool temperaturemeasurement read measured-value 1 4

          [1659351487.005743][12201:12207] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_0402 Attribute 0x0000_0000 DataVersion: 2406690152
          [1659351487.005831][12201:12207] CHIP:TOO:   MeasuredValue: 100
          [1659351487.005924][12201:12207] CHIP:EM: Sending Standalone Ack for MessageCounter:236763897 on exchange 8128i
      disabled: true

    - label:
          "Change the state of this sensor (e.g. cover the occupancy sensor,
          open the contact sensor, heat the temperature sensor)"
      verification: |
          Press a key "tbd" on bridge-app to change the simulated temperature

          [1659351537.115828][14237:14242] CHIP:DL: TempSensorDevice[TempSensor 1]: New measurement="200"
          [1659351537.115987][14237:14242] CHIP:DL: TempSensorDevice[TempSensor 2]: New measurement="200"
          [1659351537.116097][14237:14242] CHIP:DL: TempSensorDevice[Composed TempSensor 1]: New measurement="200"
          [1659351537.116158][14237:14237] CHIP:DMG: Endpoint 4, Cluster 0x0000_0402 update version to 8f732d69
          [1659351537.116300][14237:14237] CHIP:DMG: Endpoint 5, Cluster 0x0000_0402 update version to 36be37c5
          [1659351537.116393][14237:14237] CHIP:DMG: Endpoint 7, Cluster 0x0000_0402 update version to 2cf2064d
          [1659351537.116179][14237:14242] CHIP:DL: TempSensorDevice[Composed TempSensor 2]: New measurement="200"
      disabled: true

    - label: "Read the state of this bridged device again, as in 7b"
      verification: |
          ./chip-tool temperaturemeasurement read measured-value 1 4

          expect to get a different value than step 7b
          [1659351542.393349][12212:12217] CHIP:TOO: Endpoint: 4 Cluster: 0x0000_0402 Attribute 0x0000_0000 DataVersion: 2406690153
          [1659351542.393429][12212:12217] CHIP:TOO:   MeasuredValue: 200
          [1659351542.393552][12212:12217] CHIP:EM: Sending Standalone Ack for MessageCounter:120981971 on exchange 25924i
      disabled: true
