# 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.1.12. [TC-CADMIN-1.12] Open commissioning window on DUT twice using ECM
    then BCM [DUT - Commissioner]

PICS:
    - CADMIN.C

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

tests:
    - label: "Precondition: Reset DUT_CE to factory defaults"
      verification: |
          verification step to be updated.
      disabled: true

    - label: "DUT_CR1 starts a commissioning process with TH_CE"
      PICS: CADMIN.C
      verification: |
          "1. Provision the device using your DUT controller (use above instructions) ,
          "
      disabled: true

    - label:
          "DUT_CR1 sends command to TH_CE to open a commissioning window with a
          commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM and
          TH_CR3 Commissions with TH_CE"
      PICS: CADMIN.C.C00.Tx
      verification: |
          On your first controller, open commissioning window using ECM

          Below is the example is using chip tool as controller
          ./chip-tool pairing open-commissioning-window 1 1 300 1000 3840

          [1635874557.409509][4549:4554] CHIP:SC: Success status report received. Session was established
          [1635874557.409553][4549:4554] CHIP:IN: New secure session created for device 0x0000000000000001, key 76!!
          [1635874557.409649][4549:4554] CHIP:CTL: OpenCommissioningWindow for device ID 1
          [1635874557.416929][4549:4554] CHIP:DMG: ICR moving to [AddingComm]
          [1635874557.417092][4549:4554] CHIP:DMG: ICR moving to [AddedComma]
          [1635874557.417215][4549:4554] CHIP:IN: Prepared encrypted message 0xaaaac5947d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 5541i with MessageCounter:0.
          [1635874557.417271][4549:4554] CHIP:IN: Sending encrypted msg 0xaaaac5947d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 16129075 msec
          [1635874557.417449][4549:4554] CHIP:DMG: ICR moving to [CommandSen]
          [1635874557.417505][4549:4554] CHIP:CTL: Manual pairing code: [35484132896]
          [1635874557.417577][4549:4554] CHIP:CTL: SetupQRCode: [MT:00000CQM00AT-F5A510]



          On 3rd controller using chip tool connect using manual code

          ./chip-tool pairing code 1 35484132896

          Verify you got below message
          Device commissioning completed with success
      disabled: true

    - label:
          "DUT_CR1 sends command to TH_CE to open a commissioning window with a
          commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM and
          TH_CR2 Commissions with TH_CE"
      PICS: CADMIN.C.C00.Tx
      verification: |
          On your first controller, open commissioning window using ECM

          Below is the example is using chip tool as controller
          ./chip-tool pairing open-commissioning-window 1 1 300 1000 3840

          [1635874557.409509][4549:4554] CHIP:SC: Success status report received. Session was established
          [1635874557.409553][4549:4554] CHIP:IN: New secure session created for device 0x0000000000000001, key 76!!
          [1635874557.409649][4549:4554] CHIP:CTL: OpenCommissioningWindow for device ID 1
          [1635874557.416929][4549:4554] CHIP:DMG: ICR moving to [AddingComm]
          [1635874557.417092][4549:4554] CHIP:DMG: ICR moving to [AddedComma]
          [1635874557.417215][4549:4554] CHIP:IN: Prepared encrypted message 0xaaaac5947d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 5541i with MessageCounter:0.
          [1635874557.417271][4549:4554] CHIP:IN: Sending encrypted msg 0xaaaac5947d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 16129075 msec
          [1635874557.417449][4549:4554] CHIP:DMG: ICR moving to [CommandSen]
          [1635874557.417505][4549:4554] CHIP:CTL: Manual pairing code: [35484132896]
          [1635874557.417577][4549:4554] CHIP:CTL: SetupQRCode: [MT:00000CQM00AT-F5A510]



          On 2nd controller using chip tool connect using manual code

          ./chip-tool pairing code 1 35484132896

          Verify you got below message
          Device commissioning completed with success
      disabled: true

    - label:
          "DUT_CR1 sends command to TH_CE to open a commissioning window with a
          commissioning timeout of PIXIT.CADMIN.CwDuration seconds using ECM"
      PICS: CADMIN.C.C00.Tx
      verification: |
          On your first controller, open commissioning window using ECM

          Below is the example is using chip tool as controller
          ./chip-tool pairing open-commissioning-window 1 1 300 1000 3840

          [1635874557.409509][4549:4554] CHIP:SC: Success status report received. Session was established
          [1635874557.409553][4549:4554] CHIP:IN: New secure session created for device 0x0000000000000001, key 76!!
          [1635874557.409649][4549:4554] CHIP:CTL: OpenCommissioningWindow for device ID 1
          [1635874557.416929][4549:4554] CHIP:DMG: ICR moving to [AddingComm]
          [1635874557.417092][4549:4554] CHIP:DMG: ICR moving to [AddedComma]
          [1635874557.417215][4549:4554] CHIP:IN: Prepared encrypted message 0xaaaac5947d10 to 0x0000000000000001 of type 0x8 and protocolId (0, 1) on exchange 5541i with MessageCounter:0.
          [1635874557.417271][4549:4554] CHIP:IN: Sending encrypted msg 0xaaaac5947d10 with MessageCounter:0 to 0x0000000000000001 at monotonic time: 16129075 msec
          [1635874557.417449][4549:4554] CHIP:DMG: ICR moving to [CommandSen]
          [1635874557.417505][4549:4554] CHIP:CTL: Manual pairing code: [35484132896]
          [1635874557.417577][4549:4554] CHIP:CTL: SetupQRCode: [MT:00000CQM00AT-F5A510]
      disabled: true

    - label:
          "Before the expiration of PIXIT.CADMIN.CwDuration seconds that is set
          in step 4, DUT_CR1 sends command to TH_CE to read WindowStatus
          attribute"
      PICS: CADMIN.C.A0000
      verification: |
          On first controller read window status

          ./chip-tool administratorcommissioning read window-status 1 0

          [1658838248.886555][9273:9278] CHIP:DMG: ReportDataMessage =
          [1658838248.886599][9273:9278] CHIP:DMG: {
          [1658838248.886634][9273:9278] CHIP:DMG:         AttributeReportIBs =
          [1658838248.886683][9273:9278] CHIP:DMG:         [
          [1658838248.886722][9273:9278] CHIP:DMG:                 AttributeReportIB =
          [1658838248.886774][9273:9278] CHIP:DMG:                 {
          [1658838248.886816][9273:9278] CHIP:DMG:                         AttributeDataIB =
          [1658838248.886872][9273:9278] CHIP:DMG:                         {
          [1658838248.886925][9273:9278] CHIP:DMG:                                 DataVersion = 0x906dac1f,
          [1658838248.886981][9273:9278] CHIP:DMG:                                 AttributePathIB =
          [1658838248.887036][9273:9278] CHIP:DMG:                                 {
          [1658838248.887086][9273:9278] CHIP:DMG:                                         Endpoint = 0x0,
          [1658838248.887146][9273:9278] CHIP:DMG:                                         Cluster = 0x3c,
          [1658838248.887208][9273:9278] CHIP:DMG:                                         Attribute = 0x0000_0000,
          [1658838248.887256][9273:9278] CHIP:DMG:                                 }
          [1658838248.887316][9273:9278] CHIP:DMG:
          [1658838248.887367][9273:9278] CHIP:DMG:                                 Data = 1,
          [1658838248.887417][9273:9278] CHIP:DMG:                         },
          [1658838248.887469][9273:9278] CHIP:DMG:
          [1658838248.887514][9273:9278] CHIP:DMG:                 },
          [1658838248.887562][9273:9278] CHIP:DMG:
          [1658838248.887597][9273:9278] CHIP:DMG:         ],
          [1658838248.887630][9273:9278] CHIP:DMG:
          [1658838248.887658][9273:9278] CHIP:DMG:         SuppressResponse = true,
          [1658838248.887687][9273:9278] CHIP:DMG:         InteractionModelRevision = 1
          [1658838248.887740][9273:9278] CHIP:DMG: }
          [1658838248.887888][9273:9278] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2423106591
          [1658838248.887959][9273:9278] CHIP:TOO:   WindowStatus: 1
          [1658838248.888038][9273:9278] CHIP:EM: Sending Standalone Ack for MessageCounter:253317720 on exchange 63644i
      disabled: true

    - label:
          "Before the expiration of PIXIT.CADMIN.CwDuration seconds that was set
          in step 4, DUT_CR1 sends command to TH_CE to open a 2nd commissioning
          window with a commissioning timeout of PIXIT.CADMIN.CwDuration seconds
          using ECM"
      PICS: CADMIN.C.C00.Tx
      verification: |
          On your first controller, open commissioning window using ECM before the timer expiry from the above step

          Below is the example is using chip tool as controller
          ./chip-tool pairing open-commissioning-window 1 1 300 1000 3840

          CHIP:DMG: InvokeResponseMessage =
          [1650527622.373450][15824:15829] CHIP:DMG: {
          [1650527622.373531][15824:15829] CHIP:DMG:         suppressResponse = false,
          [1650527622.373628][15824:15829] CHIP:DMG:         InvokeResponseIBs =
          [1650527622.373734][15824:15829] CHIP:DMG:         [
          [1650527622.373817][15824:15829] CHIP:DMG:                 InvokeResponseIB =
          [1650527622.373913][15824:15829] CHIP:DMG:                 {
          [1650527622.374001][15824:15829] CHIP:DMG:                         CommandStatusIB =
          [1650527622.374087][15824:15829] CHIP:DMG:                         {
          [1650527622.374182][15824:15829] CHIP:DMG:                                 CommandPathIB =
          [1650527622.374296][15824:15829] CHIP:DMG:                                 {
          [1650527622.374382][15824:15829] CHIP:DMG:                                         EndpointId = 0x0,
          [1650527622.374490][15824:15829] CHIP:DMG:                                         ClusterId = 0x3c,
          [1650527622.374593][15824:15829] CHIP:DMG:                                         CommandId = 0x1,
          [1650527622.374682][15824:15829] CHIP:DMG:                                 },
          [1650527622.374799][15824:15829] CHIP:DMG:
          [1650527622.374896][15824:15829] CHIP:DMG:                                 StatusIB =
          [1650527622.374979][15824:15829] CHIP:DMG:                                 {
          [1650527622.375086][15824:15829] CHIP:DMG:                                         status = 0x01 (FAILURE),
          [1650527622.375236][15824:15829] CHIP:DMG:                                         cluster-status = 0x1,
          [1650527622.375320][15824:15829] CHIP:DMG:                                 },
          [1650527622.375426][15824:15829] CHIP:DMG:
          [1650527622.375527][15824:15829] CHIP:DMG:                         },
          [1650527622.375616][15824:15829] CHIP:DMG:
          [1650527622.375704][15824:15829] CHIP:DMG:                 },
          [1650527622.375786][15824:15829] CHIP:DMG:
          [1650527622.375864][15824:15829] CHIP:DMG:         ],
          [1650527622.375940][15824:15829] CHIP:DMG:
          [1650527622.376000][15824:15829] CHIP:DMG:         InteractionModelRevision = 1
          [1650527622.376058][15824:15829] CHIP:DMG: },
          [1650527622.376202][15824:15829] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
          [1650527622.376278][15824:15829] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01
      disabled: true

    - label:
          "Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that was
          set in step 4"
      verification: |
          Wait for the expiration of PIXIT_COMM_WIN seconds
      disabled: true

    - label:
          "DUT_CR1 sends command to TH_CE to re-opens a commissioning window
          with a commissioning timeout of PIXIT.CADMIN.CwDuration seconds using
          BCM"
      PICS: CADMIN.C.C01.Tx
      verification: |
          On your first controller, open commissioning window using BCM

          Below is the example when using chip tool as controller
          ./chip-tool administratorcommissioning open-basic-commissioning-window 500 1 0 --timedInteractionTimeoutMs 1000



          CHIP:DMG: InvokeResponseMessage =
          [1650278416.248379][11064:11069] CHIP:DMG: {
          [1650278416.248436][11064:11069] CHIP:DMG:         suppressResponse = false,
          [1650278416.248495][11064:11069] CHIP:DMG:         InvokeResponseIBs =
          [1650278416.248570][11064:11069] CHIP:DMG:         [
          [1650278416.248630][11064:11069] CHIP:DMG:                 InvokeResponseIB =
          [1650278416.248718][11064:11069] CHIP:DMG:                 {
          [1650278416.248783][11064:11069] CHIP:DMG:                         CommandStatusIB =
          [1650278416.248860][11064:11069] CHIP:DMG:                         {
          [1650278416.248931][11064:11069] CHIP:DMG:                                 CommandPathIB =
          [1650278416.249011][11064:11069] CHIP:DMG:                                 {
          [1650278416.249100][11064:11069] CHIP:DMG:                                         EndpointId = 0x0,
          [1650278416.249186][11064:11069] CHIP:DMG:                                         ClusterId = 0x3c,
          [1650278416.249268][11064:11069] CHIP:DMG:                                         CommandId = 0x1,
          [1650278416.249347][11064:11069] CHIP:DMG:                                 },
          [1650278416.249430][11064:11069] CHIP:DMG:
          [1650278416.249501][11064:11069] CHIP:DMG:                                 StatusIB =
          [1650278416.249581][11064:11069] CHIP:DMG:                                 {
          [1650278416.249664][11064:11069] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1650278416.249738][11064:11069] CHIP:DMG:                                 },
          [1650278416.249823][11064:11069] CHIP:DMG:
          [1650278416.249889][11064:11069] CHIP:DMG:                         },
          [1650278416.249969][11064:11069] CHIP:DMG:
          [1650278416.250035][11064:11069] CHIP:DMG:                 },
          [1650278416.250113][11064:11069] CHIP:DMG:
          [1650278416.250169][11064:11069] CHIP:DMG:         ],
          [1650278416.250241][11064:11069] CHIP:DMG:
          [1650278416.250298][11064:11069] CHIP:DMG:         InteractionModelRevision = 1
          [1650278416.250355][11064:11069] CHIP:DMG: },
          [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
          [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
      disabled: true

    - label:
          "Before the expiration of PIXIT.CADMIN.CwDuration seconds that is set
          in step 8, DUT_CR1 sends command to TH_CE to read WindowStatus
          attribute"
      PICS: CADMIN.C.A0000
      verification: |
          On first controller read window status

           ./chip-tool administratorcommissioning read window-status 1 0

          [1658838248.886555][9273:9278] CHIP:DMG: ReportDataMessage =
          [1658838248.886599][9273:9278] CHIP:DMG: {
          [1658838248.886634][9273:9278] CHIP:DMG:         AttributeReportIBs =
          [1658838248.886683][9273:9278] CHIP:DMG:         [
          [1658838248.886722][9273:9278] CHIP:DMG:                 AttributeReportIB =
          [1658838248.886774][9273:9278] CHIP:DMG:                 {
          [1658838248.886816][9273:9278] CHIP:DMG:                         AttributeDataIB =
          [1658838248.886872][9273:9278] CHIP:DMG:                         {
          [1658838248.886925][9273:9278] CHIP:DMG:                                 DataVersion = 0x906dac1f,
          [1658838248.886981][9273:9278] CHIP:DMG:                                 AttributePathIB =
          [1658838248.887036][9273:9278] CHIP:DMG:                                 {
          [1658838248.887086][9273:9278] CHIP:DMG:                                         Endpoint = 0x0,
          [1658838248.887146][9273:9278] CHIP:DMG:                                         Cluster = 0x3c,
          [1658838248.887208][9273:9278] CHIP:DMG:                                         Attribute = 0x0000_0000,
          [1658838248.887256][9273:9278] CHIP:DMG:                                 }
          [1658838248.887316][9273:9278] CHIP:DMG:
          [1658838248.887367][9273:9278] CHIP:DMG:                                 Data = 1,
          [1658838248.887417][9273:9278] CHIP:DMG:                         },
          [1658838248.887469][9273:9278] CHIP:DMG:
          [1658838248.887514][9273:9278] CHIP:DMG:                 },
          [1658838248.887562][9273:9278] CHIP:DMG:
          [1658838248.887597][9273:9278] CHIP:DMG:         ],
          [1658838248.887630][9273:9278] CHIP:DMG:
          [1658838248.887658][9273:9278] CHIP:DMG:         SuppressResponse = true,
          [1658838248.887687][9273:9278] CHIP:DMG:         InteractionModelRevision = 1
          [1658838248.887740][9273:9278] CHIP:DMG: }
          [1658838248.887888][9273:9278] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2423106591
          [1658838248.887959][9273:9278] CHIP:TOO:   WindowStatus: 1
          [1658838248.888038][9273:9278] CHIP:EM: Sending Standalone Ack for MessageCounter:253317720 on exchange 63644i
      disabled: true

    - label:
          "Before the expiration of PIXIT.CADMIN.CwDuration seconds that was set
          in step 8, TH_CR3 sends command to TH_CE to open a 2nd commissioning
          window with a commissioning timeout of PIXIT.CADMIN.CwDuration seconds
          using BCM"
      PICS: CADMIN.C.C01.Tx
      verification: |
          On third controller open commissioning window verify status code 1

          ./chip-tool administratorcommissioning open-basic-commissioning-window 500 3 0 --timedInteractionTimeoutMs 1000

          [1658838344.191922][9291:9296] CHIP:DMG: InvokeResponseMessage =
          [1658838344.191947][9291:9296] CHIP:DMG: {
          [1658838344.191971][9291:9296] CHIP:DMG:         suppressResponse = false,
          [1658838344.192003][9291:9296] CHIP:DMG:         InvokeResponseIBs =
          [1658838344.192035][9291:9296] CHIP:DMG:         [
          [1658838344.192059][9291:9296] CHIP:DMG:                 InvokeResponseIB =
          [1658838344.192091][9291:9296] CHIP:DMG:                 {
          [1658838344.192116][9291:9296] CHIP:DMG:                         CommandStatusIB =
          [1658838344.192149][9291:9296] CHIP:DMG:                         {
          [1658838344.192181][9291:9296] CHIP:DMG:                                 CommandPathIB =
          [1658838344.192212][9291:9296] CHIP:DMG:                                 {
          [1658838344.192251][9291:9296] CHIP:DMG:                                         EndpointId = 0x0,
          [1658838344.192290][9291:9296] CHIP:DMG:                                         ClusterId = 0x3c,
          [1658838344.192328][9291:9296] CHIP:DMG:                                         CommandId = 0x1,
          [1658838344.192364][9291:9296] CHIP:DMG:                                 },
          [1658838344.192401][9291:9296] CHIP:DMG:
          [1658838344.192430][9291:9296] CHIP:DMG:                                 StatusIB =
          [1658838344.192461][9291:9296] CHIP:DMG:                                 {
          [1658838344.192500][9291:9296] CHIP:DMG:                                         status = 0x01 (FAILURE),
          [1658838344.192538][9291:9296] CHIP:DMG:                                         cluster-status = 0x1,
          [1658838344.192574][9291:9296] CHIP:DMG:                                 },
          [1658838344.192611][9291:9296] CHIP:DMG:
          [1658838344.192640][9291:9296] CHIP:DMG:                         },
          [1658838344.192673][9291:9296] CHIP:DMG:
          [1658838344.192698][9291:9296] CHIP:DMG:                 },
          [1658838344.192728][9291:9296] CHIP:DMG:
          [1658838344.192752][9291:9296] CHIP:DMG:         ],
          [1658838344.192782][9291:9296] CHIP:DMG:
          [1658838344.192805][9291:9296] CHIP:DMG:         InteractionModelRevision = 1
          [1658838344.192828][9291:9296] CHIP:DMG: },
          [1658838344.192887][9291:9296] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
          [1658838344.192922][9291:9296] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01
      disabled: true

    - label:
          "Wait for the expiration of PIXIT.CADMIN.CwDuration seconds that was
          set in step 8"
      verification: |
          Wait for the expiration of PIXIT_COMM_WIN seconds
      disabled: true

    - label:
          "DUT_CR1 sends command to TH_CE to open a commissioning window with a
          commissioning timeout of PIXIT.CADMIN.CwDuration seconds using BCM"
      PICS: CADMIN.C.C01.Tx
      verification: |
          On your first controller, open commissioning window using BCM

          Below is the example when using chip tool as controller
          ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000

          CHIP:DMG: InvokeResponseMessage =
          [1650278416.248379][11064:11069] CHIP:DMG: {
          [1650278416.248436][11064:11069] CHIP:DMG:         suppressResponse = false,
          [1650278416.248495][11064:11069] CHIP:DMG:         InvokeResponseIBs =
          [1650278416.248570][11064:11069] CHIP:DMG:         [
          [1650278416.248630][11064:11069] CHIP:DMG:                 InvokeResponseIB =
          [1650278416.248718][11064:11069] CHIP:DMG:                 {
          [1650278416.248783][11064:11069] CHIP:DMG:                         CommandStatusIB =
          [1650278416.248860][11064:11069] CHIP:DMG:                         {
          [1650278416.248931][11064:11069] CHIP:DMG:                                 CommandPathIB =
          [1650278416.249011][11064:11069] CHIP:DMG:                                 {
          [1650278416.249100][11064:11069] CHIP:DMG:                                         EndpointId = 0x0,
          [1650278416.249186][11064:11069] CHIP:DMG:                                         ClusterId = 0x3c,
          [1650278416.249268][11064:11069] CHIP:DMG:                                         CommandId = 0x1,
          [1650278416.249347][11064:11069] CHIP:DMG:                                 },
          [1650278416.249430][11064:11069] CHIP:DMG:
          [1650278416.249501][11064:11069] CHIP:DMG:                                 StatusIB =
          [1650278416.249581][11064:11069] CHIP:DMG:                                 {
          [1650278416.249664][11064:11069] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1650278416.249738][11064:11069] CHIP:DMG:                                 },
          [1650278416.249823][11064:11069] CHIP:DMG:
          [1650278416.249889][11064:11069] CHIP:DMG:                         },
          [1650278416.249969][11064:11069] CHIP:DMG:
          [1650278416.250035][11064:11069] CHIP:DMG:                 },
          [1650278416.250113][11064:11069] CHIP:DMG:
          [1650278416.250169][11064:11069] CHIP:DMG:         ],
          [1650278416.250241][11064:11069] CHIP:DMG:
          [1650278416.250298][11064:11069] CHIP:DMG:         InteractionModelRevision = 1
          [1650278416.250355][11064:11069] CHIP:DMG: },
          [1650278416.250535][11064:11069] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
          [1650278416.250634][11064:11069] CHIP:DMG: ICR moving to [AwaitingDe]
      disabled: true

    - label:
          "Before the expiration of PIXIT.CADMIN.CwDuration seconds that was set
          in step 12, TH_CR2 sends command to open a second commissioning window
          on TH_CE using a commissioning timeout of PIXIT.CADMIN.CwDuration
          seconds using BCM"
      PICS: CADMIN.C.C01.Tx
      verification: |
          On the 2nd controller using chip tool, open commissioning window using BCM before the timer expiry from above step

          ./chip-tool administratorcommissioning open-basic-commissioning-window 500 2 0 --timedInteractionTimeoutMs 1000




          CHIP:DMG: InvokeResponseMessage =
          [1650527622.373450][15824:15829] CHIP:DMG: {
          [1650527622.373531][15824:15829] CHIP:DMG:         suppressResponse = false,
          [1650527622.373628][15824:15829] CHIP:DMG:         InvokeResponseIBs =
          [1650527622.373734][15824:15829] CHIP:DMG:         [
          [1650527622.373817][15824:15829] CHIP:DMG:                 InvokeResponseIB =
          [1650527622.373913][15824:15829] CHIP:DMG:                 {
          [1650527622.374001][15824:15829] CHIP:DMG:                         CommandStatusIB =
          [1650527622.374087][15824:15829] CHIP:DMG:                         {
          [1650527622.374182][15824:15829] CHIP:DMG:                                 CommandPathIB =
          [1650527622.374296][15824:15829] CHIP:DMG:                                 {
          [1650527622.374382][15824:15829] CHIP:DMG:                                         EndpointId = 0x0,
          [1650527622.374490][15824:15829] CHIP:DMG:                                         ClusterId = 0x3c,
          [1650527622.374593][15824:15829] CHIP:DMG:                                         CommandId = 0x1,
          [1650527622.374682][15824:15829] CHIP:DMG:                                 },
          [1650527622.374799][15824:15829] CHIP:DMG:
          [1650527622.374896][15824:15829] CHIP:DMG:                                 StatusIB =
          [1650527622.374979][15824:15829] CHIP:DMG:                                 {
          [1650527622.375086][15824:15829] CHIP:DMG:                                         status = 0x01 (FAILURE),
          [1650527622.375236][15824:15829] CHIP:DMG:                                         cluster-status = 0x1,
          [1650527622.375320][15824:15829] CHIP:DMG:                                 },
          [1650527622.375426][15824:15829] CHIP:DMG:
          [1650527622.375527][15824:15829] CHIP:DMG:                         },
          [1650527622.375616][15824:15829] CHIP:DMG:
          [1650527622.375704][15824:15829] CHIP:DMG:                 },
          [1650527622.375786][15824:15829] CHIP:DMG:
          [1650527622.375864][15824:15829] CHIP:DMG:         ],
          [1650527622.375940][15824:15829] CHIP:DMG:
          [1650527622.376000][15824:15829] CHIP:DMG:         InteractionModelRevision = 1
          [1650527622.376058][15824:15829] CHIP:DMG: },
          [1650527622.376202][15824:15829] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x1
          [1650527622.376278][15824:15829] CHIP:TOO: Error: IM Error 0x00000601: Cluster-specific error: 0x01
      disabled: true

    - label: "DUT_CR1 sends command to TH_CE to read WindowStatus attribute"
      PICS: CADMIN.C.A0000
      verification: |
          On first controller read window status

           ./chip-tool administratorcommissioning read window-status 1 0


          [1658838248.887888][9273:9278] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0000 DataVersion: 2423106591
          [1658838248.887959][9273:9278] CHIP:TOO:   WindowStatus: 1
          [1658838248.888038][9273:9278] CHIP:EM: Sending Standalone Ack for MessageCounter:253317720 on exchange 63644i
      disabled: true

    - label: "DUT_CR1 sends command to TH_CE to read AdminFabricIndex attribute"
      PICS: CADMIN.C.A0001
      verification: |
          On first controller read AdminFabricIndex

          ./chip-tool administratorcommissioning read admin-fabric-index  1 0

          [1658838491.852418][9309:9314] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0001 DataVersion: 2423106591
          [1658838491.852516][9309:9314] CHIP:TOO:   AdminFabricIndex: 1
          [1658838491.852595][9309:9314] CHIP:EM: Sending Standalone Ack for MessageCounter:72459812 on exchange 35132i
      disabled: true

    - label: "DUT_CR1 sends command to TH_CE to read AdminVendorId attribute"
      PICS: CADMIN.C.A0002
      verification: |
          On first controller read  AdminVendorId

          ./chip-tool administratorcommissioning read admin-vendor-id 1 0

          [1658838521.588942][9317:9322] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003C Attribute 0x0000_0002 DataVersion: 2423106591
          [1658838521.589005][9317:9322] CHIP:TOO:   AdminVendorId: 0
          [1658838521.589079][9317:9322] CHIP:EM: Sending Standalone Ack for MessageCounter:217165763 on exchange 55683i
      disabled: true
