# 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: "Note"
      verification: |
          For DUT as comissioner  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: "Precondition:"
      verification: |
          Reset Devices to factory defaults
      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: |
          verification step to be updated.
      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: |
          verification step to be updated.
      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
