# 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: 133.2.3. [TC-ACL-2.4] ACL attribute

PICS:
    - ACL.S

config:
    nodeId: 0x12344321
    cluster: "Access Control"
    endpoint: 0
    CAT1:
        type: int64u
        defaultValue: 65520
    CAT2:
        type: int64u
        defaultValue: 65521
    CAT3:
        type: int64u
        defaultValue: 65522
    CAT4:
        type: int64u
        defaultValue: 65523

tests:
    - label: "Step 1:Wait for the commissioned device to be retrieved"
      cluster: "DelayCommands"
      command: "WaitForCommissionee"
      arguments:
          values:
              - name: "nodeId"
                value: nodeId

    - label: "Read the commissioner node ID"
      cluster: "CommissionerCommands"
      command: "GetCommissionerNodeId"
      response:
          values:
              - name: "nodeId"
                saveAs: CommissionerNodeId

    - label:
          "Step 2:TH1 reads DUT Endpoint 0 OperationalCredentials cluster
          CurrentFabricIndex attribute"
      command: "readAttribute"
      cluster: "Operational Credentials"
      attribute: "CurrentFabricIndex"
      response:
          saveAs: CurrentFabricIndex

    - label:
          "Step 3:TH1 reads DUT Endpoint 0 AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 4:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute,
          value is list of AccessControlEntryStruct containing 3 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2 . struct Privilege field:
          View (1) AuthMode field: CASE (3) Subjects field: [111, 222, 333, 444]
          Targets field: [{Cluster: 11}, {Endpoint: 22}] 3..struct Privilege
          field: Operate (3) AuthMode field: Group (3) Subjects field: [555,
          666, 777, 888] Targets field: [{Cluster: 55}, {Endpoint: 66}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 3,
                      Subjects: [111, 222, 333, 444],
                      Targets:
                          [{ Cluster: 11, Endpoint: 22, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: [555, 666, 777, 888],
                      Targets:
                          [{ Cluster: 55, Endpoint: 66, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 5:TH1 reads DUT Endpoint 0 AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 3,
                      Subjects: [111, 222, 333, 444],
                      Targets:
                          [{ Cluster: 11, Endpoint: 22, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: [555, 666, 777, 888],
                      Targets:
                          [{ Cluster: 55, Endpoint: 66, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 6:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute,
          value is list of AccessControlEntryStruct containing 3 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Manage (4) AuthMode field: Group (3) Subjects field: [444, 333, 222,
          111] Targets field: [{Cluster: 44}, {Endpoint: 33}] 3.struct Privilege
          field: Administer (5) AuthMode field: CASE (2) Subjects field: [888,
          777, 666, 555] Targets field: [{Cluster: 88}, {Endpoint: 77}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 4,
                      AuthMode: 3,
                      Subjects: [444, 333, 222, 111],
                      Targets:
                          [{ Cluster: 44, Endpoint: 33, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [888, 777, 666, 555],
                      Targets:
                          [{ Cluster: 88, Endpoint: 77, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 7:TH1 reads DUT Endpoint 0 AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 4,
                      AuthMode: 3,
                      Subjects: [444, 333, 222, 111],
                      Targets:
                          [{ Cluster: 44, Endpoint: 33, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [888, 777, 666, 555],
                      Targets:
                          [{ Cluster: 88, Endpoint: 77, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 8:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute,
          value is list of AccessControlEntryStruct containing 3 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          View (1) AuthMode field: CASE (2) Subjects field: [111, 222, 333, 444]
          Targets field: [{Cluster: 11, Endpoint: 22}, {Cluster: 33, DeviceType:
          44}] 3.struct Privilege field: Operate (3) AuthMode field: Group (3)
          Subjects field: [555, 666, 777, 888] Targets field: [{Cluster: 55,
          Endpoint: 66}, {Cluster: 77, DeviceType: 88}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 2,
                      Subjects: [111, 222, 333, 444],
                      Targets:
                          [
                              { Cluster: 11, Endpoint: 22, DeviceType: null },
                              { Cluster: 33, Endpoint: null, DeviceType: 44 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: [555, 666, 777, 888],
                      Targets:
                          [
                              { Cluster: 55, Endpoint: 66, DeviceType: null },
                              { Cluster: 77, Endpoint: null, DeviceType: 88 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 9:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 2,
                      Subjects: [111, 222, 333, 444],
                      Targets:
                          [
                              { Cluster: 11, Endpoint: 22, DeviceType: null },
                              { Cluster: 33, Endpoint: null, DeviceType: 44 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: [555, 666, 777, 888],
                      Targets:
                          [
                              { Cluster: 55, Endpoint: 66, DeviceType: null },
                              { Cluster: 77, Endpoint: null, DeviceType: 88 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 10:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 3
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          View (1) AuthMode field: CASE (2) Subjects field: null Targets field:
          [{Cluster: 11, Endpoint: 22}, {Cluster: 33, DeviceType: 44}] 3.struct
          Privilege field: Operate (3) AuthMode field: Group (3) Subjects field:
          null Targets field: [{Cluster: 55, Endpoint: 66}, {Cluster: 77,
          DeviceType: 88}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [
                              { Cluster: 11, Endpoint: 22, DeviceType: null },
                              { Cluster: 33, Endpoint: null, DeviceType: 44 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: null,
                      Targets:
                          [
                              { Cluster: 55, Endpoint: 66, DeviceType: null },
                              { Cluster: 77, Endpoint: null, DeviceType: 88 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 11:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [
                              { Cluster: 11, Endpoint: 22, DeviceType: null },
                              { Cluster: 33, Endpoint: null, DeviceType: 44 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: null,
                      Targets:
                          [
                              { Cluster: 55, Endpoint: 66, DeviceType: null },
                              { Cluster: 77, Endpoint: null, DeviceType: 88 },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 12:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 3
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          View (1) AuthMode field: CASE (2) Subjects field: [111, 222, 333, 444]
          Targets field: null 3.struct Privilege field: Operate (3) AuthMode
          field: Group (3) Subjects field: [555, 666, 777, 888] Targets field:
          null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 2,
                      Subjects: [111, 222, 333, 444],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: [555, 666, 777, 888],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 13:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 1,
                      AuthMode: 2,
                      Subjects: [111, 222, 333, 444],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: [555, 666, 777, 888],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 14:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: Group (3) Subjects field: null Targets
          field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 15:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 3,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 16:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          ProxyView (2) AuthMode field: CASE (2) Subjects field: null Targets
          field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 2,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 17:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 2,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 18:TH1 reads DUT AccessControl cluster
          SubjectsPerAccessControlEntry attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "SubjectsPerAccessControlEntry"
      response:
          saveAs: MAXSUBJECTS

    #Issue https://github.com/project-chip/connectedhomeip/issues/16719
    - label:
          "Step 19:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: list of
          MAXSUBJECTS random node IDs (stored as SUBJECTS) Targets field: null"
      PICS: ACL.S.A0000 && PICS_SKIP_SAMPLE_APP
      verification: |
          ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects":[33,44,55,66] , "targets": null}]' 1 0
          On TH1(Chiptool), Verify that the status is success when writing the AccessControl cluster ACL attribute with a  value is list of AccessControlEntryStruct containing 2 elements as Subject as SUBJECTS and Target as null



          [1657542321.144954][3461:3466] CHIP:DMG: {
          [1657542321.144990][3461:3466] CHIP:DMG:        AttributeStatusIBs =
          [1657542321.145038][3461:3466] CHIP:DMG:        [
          [1657542321.145082][3461:3466] CHIP:DMG:                AttributeStatusIB =
          [1657542321.145128][3461:3466] CHIP:DMG:                {
          [1657542321.145170][3461:3466] CHIP:DMG:                        AttributePathIB =
          [1657542321.145219][3461:3466] CHIP:DMG:                        {
          [1657542321.145273][3461:3466] CHIP:DMG:                                Endpoint = 0x0,
          [1657542321.145327][3461:3466] CHIP:DMG:                                Cluster = 0x1f,
          [1657542321.145382][3461:3466] CHIP:DMG:                                Attribute = 0x0000_0000,
          [1657542321.145428][3461:3466] CHIP:DMG:                        }
          [1657542321.145484][3461:3466] CHIP:DMG:
          [1657542321.145531][3461:3466] CHIP:DMG:                        StatusIB =
          [1657542321.145583][3461:3466] CHIP:DMG:                        {
          [1657542321.145633][3461:3466] CHIP:DMG:                                status = 0x00 (SUCCESS),
          [1657542321.145684][3461:3466] CHIP:DMG:                        },
          [1657542321.145730][3461:3466] CHIP:DMG:
          [1657542321.145774][3461:3466] CHIP:DMG:                },
          [1657542321.145831][3461:3466] CHIP:DMG:
          [1657542321.145870][3461:3466] CHIP:DMG:                AttributeStatusIB =
          [1657542321.145912][3461:3466] CHIP:DMG:                {
          [1657542321.145954][3461:3466] CHIP:DMG:                        AttributePathIB =
          [1657542321.146001][3461:3466] CHIP:DMG:                        {
          [1657542321.146052][3461:3466] CHIP:DMG:                                Endpoint = 0x0,
          [1657542321.146111][3461:3466] CHIP:DMG:                                Cluster = 0x1f,
          [1657542321.146166][3461:3466] CHIP:DMG:                                Attribute = 0x0000_0000,
          [1657542321.146218][3461:3466] CHIP:DMG:                                ListIndex = Null,
          [1657542321.146267][3461:3466] CHIP:DMG:                        }
          [1657542321.146321][3461:3466] CHIP:DMG:
          [1657542321.146374][3461:3466] CHIP:DMG:                        StatusIB =
          [1657542321.146423][3461:3466] CHIP:DMG:                        {
          [1657542321.146472][3461:3466] CHIP:DMG:                                status = 0x00 (SUCCESS),
          [1657542321.146523][3461:3466] CHIP:DMG:                        },
          [1657542321.146573][3461:3466] CHIP:DMG:
          [1657542321.146614][3461:3466] CHIP:DMG:                },
          [1657542321.146670][3461:3466] CHIP:DMG:
          [1657542321.146709][3461:3466] CHIP:DMG:                AttributeStatusIB =
          [1657542321.146751][3461:3466] CHIP:DMG:                {
          [1657542321.146792][3461:3466] CHIP:DMG:                        AttributePathIB =
          [1657542321.146840][3461:3466] CHIP:DMG:                        {
          [1657542321.146890][3461:3466] CHIP:DMG:                                Endpoint = 0x0,
          [1657542321.146943][3461:3466] CHIP:DMG:                                Cluster = 0x1f,
          [1657542321.146997][3461:3466] CHIP:DMG:                                Attribute = 0x0000_0000,
          [1657542321.147049][3461:3466] CHIP:DMG:                                ListIndex = Null,
          [1657542321.147099][3461:3466] CHIP:DMG:                        }
          [1657542321.147152][3461:3466] CHIP:DMG:
          [1657542321.147204][3461:3466] CHIP:DMG:                        StatusIB =
          [1657542321.147254][3461:3466] CHIP:DMG:                        {
          [1657542321.147302][3461:3466] CHIP:DMG:                                status = 0x00 (SUCCESS),
          [1657542321.147354][3461:3466] CHIP:DMG:                        },
          [1657542321.147403][3461:3466] CHIP:DMG:
          [1657542321.147443][3461:3466] CHIP:DMG:                },
          [1657542321.147490][3461:3466] CHIP:DMG:
          [1657542321.147528][3461:3466] CHIP:DMG:        ],
          [1657542321.147586][3461:3466] CHIP:DMG:
          [1657542321.147625][3461:3466] CHIP:DMG:        InteractionModelRevision = 1
          [1657542321.147663][3461:3466] CHIP:DMG: }
          [1657542321.147865][3461:3466] CHIP:DMG: WriteClient moving to [AwaitingDe]
      cluster: "LogCommands"
      command: "UserPrompt"
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"

    #Issue https://github.com/project-chip/connectedhomeip/issues/16719
    - label: "Step 20:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000 && PICS_SKIP_SAMPLE_APP
      verification: |
          ./chip-tool accesscontrol read acl 1 0

           On TH1(Chiptool) ,  Verify that the AccessControlEntryStruct contains 2 elements with  Subject as SUBJECTS and Target as null
          [1656928460.992030][4255:4260] CHIP:DMG:        ],
          [1656928460.992075][4255:4260] CHIP:DMG:
          [1656928460.992101][4255:4260] CHIP:DMG:        SuppressResponse = true,
          [1656928460.992126][4255:4260] CHIP:DMG:        InteractionModelRevision = 1
          [1656928460.992149][4255:4260] CHIP:DMG: }
          [1656928460.992513][4255:4260] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_001F Attribute 0x0000_0000 DataVersion: 1070401481
          [1656928460.992588][4255:4260] CHIP:TOO:   ACL: 2 entries
          [1656928460.992647][4255:4260] CHIP:TOO:     [1]: {
          [1656928460.992687][4255:4260] CHIP:TOO:       Privilege: 5
          [1656928460.992712][4255:4260] CHIP:TOO:       AuthMode: 2
          [1656928460.992738][4255:4260] CHIP:TOO:       Subjects: 1 entries
          [1656928460.992767][4255:4260] CHIP:TOO:         [1]: 112233
          [1656928460.992794][4255:4260] CHIP:TOO:       Targets: null
          [1656928460.992817][4255:4260] CHIP:TOO:       FabricIndex: 1
          [1656928460.992840][4255:4260] CHIP:TOO:      }
          [1656928460.992873][4255:4260] CHIP:TOO:     [2]: {
          [1656928460.992896][4255:4260] CHIP:TOO:       Privilege: 3
          [1656928460.992918][4255:4260] CHIP:TOO:       AuthMode: 2
          [1656928460.992945][4255:4260] CHIP:TOO:       Subjects: 4 entries
          [1656928460.992971][4255:4260] CHIP:TOO:         [1]: 33
          [1656928460.992995][4255:4260] CHIP:TOO:         [2]: 44
          [1656928460.993020][4255:4260] CHIP:TOO:         [3]: 55
          [1656928460.993045][4255:4260] CHIP:TOO:         [4]: 66
          [1656928460.993069][4255:4260] CHIP:TOO:       Targets: null
          [1656928460.993091][4255:4260] CHIP:TOO:       FabricIndex: 1
          [1656928460.993113][4255:4260] CHIP:TOO:      }
          [1656928460.993204][4255:4260] CHIP:EM: Sending Standalone Ack for MessageCounter:154962728 on exchange 64378i
          [1656928460.993291][4255:4260] CHIP:IN: Prepared secure message 0xffffad69f958 to 0x0000000000000001 (1)  o
      cluster: "LogCommands"
      command: "UserPrompt"
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"

    - label:
          "Step 21:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: [CAT1, CAT2,
          CAT3, CAT4] Targets field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: [CAT1, CAT2, CAT3, CAT4],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 22:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: [CAT1, CAT2, CAT3, CAT4],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 23:TH1 reads AccessControl cluster TargetsPerAccessControlEntry
          attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "TargetsPerAccessControlEntry"
      response:
          saveAs: TargetsPerAccessControlEntry

    #Need if support : https://github.com/project-chip/connectedhomeip/issues/16719
    - label:
          "Step 24:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field:null Targets
          field: list of MAXTARGETS targets {Cluster: random} (stored as
          TARGETS)"
      PICS: ACL.S.A0000 && PICS_SKIP_SAMPLE_APP
      verification: |
          ./chip-tool accesscontrol write acl '[{ "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, { "privilege": 3, "authMode": 2, "subjects": null, "targets":[{ "cluster": 40, "endpoint": null, "deviceType": null },{ "cluster": 28, "endpoint": null, "deviceType": null }]}]' 1 0

          On TH1(Chiptool), Verify that the status is success when writing the AccessControl cluster ACL attribute with a  value is list of AccessControlEntryStruct containing 2 elements with Subjects as null  and  and Target as TARGETS

          [1657542520.140869][3499:3504] CHIP:DMG: {
          [1657542520.140922][3499:3504] CHIP:DMG:        AttributeStatusIBs =
          [1657542520.140966][3499:3504] CHIP:DMG:        [
          [1657542520.140999][3499:3504] CHIP:DMG:                AttributeStatusIB =
          [1657542520.141036][3499:3504] CHIP:DMG:                {
          [1657542520.141077][3499:3504] CHIP:DMG:                        AttributePathIB =
          [1657542520.141119][3499:3504] CHIP:DMG:                        {
          [1657542520.141163][3499:3504] CHIP:DMG:                                Endpoint = 0x0,
          [1657542520.141207][3499:3504] CHIP:DMG:                                Cluster = 0x1f,
          [1657542520.141255][3499:3504] CHIP:DMG:                                Attribute = 0x0000_0000,
          [1657542520.141300][3499:3504] CHIP:DMG:                        }
          [1657542520.141346][3499:3504] CHIP:DMG:
          [1657542520.141385][3499:3504] CHIP:DMG:                        StatusIB =
          [1657542520.141426][3499:3504] CHIP:DMG:                        {
          [1657542520.141468][3499:3504] CHIP:DMG:                                status = 0x00 (SUCCESS),
          [1657542520.141509][3499:3504] CHIP:DMG:                        },
          [1657542520.141550][3499:3504] CHIP:DMG:
          [1657542520.141584][3499:3504] CHIP:DMG:                },
          [1657542520.141630][3499:3504] CHIP:DMG:
          [1657542520.141663][3499:3504] CHIP:DMG:                AttributeStatusIB =
          [1657542520.141697][3499:3504] CHIP:DMG:                {
          [1657542520.141731][3499:3504] CHIP:DMG:                        AttributePathIB =
          [1657542520.141770][3499:3504] CHIP:DMG:                        {
          [1657542520.141811][3499:3504] CHIP:DMG:                                Endpoint = 0x0,
          [1657542520.141855][3499:3504] CHIP:DMG:                                Cluster = 0x1f,
          [1657542520.141940][3499:3504] CHIP:DMG:                                Attribute = 0x0000_0000,
          [1657542520.142024][3499:3504] CHIP:DMG:                                ListIndex = Null,
          [1657542520.142106][3499:3504] CHIP:DMG:                        }
          [1662015973.912273][3126:3132] CHIP:DMG: {
          [1662015973.912301][3126:3132] CHIP:DMG:         AttributeStatusIBs =
          [1662015973.912375][3126:3132] CHIP:DMG:         [
          [1662015973.912409][3126:3132] CHIP:DMG:                 AttributeStatusIB =
          [1662015973.912452][3126:3132] CHIP:DMG:                 {
          [1662015973.912488][3126:3132] CHIP:DMG:                         AttributePathIB =
          [1662015973.912534][3126:3132] CHIP:DMG:                         {
          [1662015973.912577][3126:3132] CHIP:DMG:                                 Endpoint = 0x0,
          [1662015973.912640][3126:3132] CHIP:DMG:                                 Cluster = 0x1f,
          [1662015973.912687][3126:3132] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1662015973.912743][3126:3132] CHIP:DMG:                         }
          [1662015973.912792][3126:3132] CHIP:DMG:
          [1662015973.912849][3126:3132] CHIP:DMG:                         StatusIB =
          [1662015973.912893][3126:3132] CHIP:DMG:                         {
          [1662015973.912948][3126:3132] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1662015973.912992][3126:3132] CHIP:DMG:                         },
          [1662015973.913046][3126:3132] CHIP:DMG:
          [1662015973.913082][3126:3132] CHIP:DMG:                 },
          [1662015973.913142][3126:3132] CHIP:DMG:
          [1662015973.913173][3126:3132] CHIP:DMG:                 AttributeStatusIB =
          [1662015973.913225][3126:3132] CHIP:DMG:                 {
          [1662015973.913260][3126:3132] CHIP:DMG:                         AttributePathIB =
          [1662015973.913315][3126:3132] CHIP:DMG:                         {
          [1662015973.913360][3126:3132] CHIP:DMG:                                 Endpoint = 0x0,
          [1662015973.913421][3126:3132] CHIP:DMG:                                 Cluster = 0x1f,
          [1662015973.913465][3126:3132] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1662015973.913518][3126:3132] CHIP:DMG:                                 ListIndex = Null,
          [1662015973.913561][3126:3132] CHIP:DMG:                         }
          [1662015973.913622][3126:3132] CHIP:DMG:
          [1662015973.913662][3126:3132] CHIP:DMG:                         StatusIB =
          [1662015973.913716][3126:3132] CHIP:DMG:                         {
          [1662015973.913759][3126:3132] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1662015973.913814][3126:3132] CHIP:DMG:                         },
          [1662015973.913855][3126:3132] CHIP:DMG:
          [1662015973.913902][3126:3132] CHIP:DMG:                 },
          [1662015973.913952][3126:3132] CHIP:DMG:
          [1662015973.913983][3126:3132] CHIP:DMG:                 AttributeStatusIB =
          [1662015973.914021][3126:3132] CHIP:DMG:                 {
          [1662015973.914056][3126:3132] CHIP:DMG:                         AttributePathIB =
          [1662015973.914095][3126:3132] CHIP:DMG:                         {
          [1662015973.914139][3126:3132] CHIP:DMG:                                 Endpoint = 0x0,
          [1662015973.914183][3126:3132] CHIP:DMG:                                 Cluster = 0x1f,
          [1662015973.914228][3126:3132] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1662015973.914270][3126:3132] CHIP:DMG:                                 ListIndex = Null,
      cluster: "LogCommands"
      command: "UserPrompt"
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"

    #Issue : https://github.com/project-chip/connectedhomeip/issues/16719
    - label: "Step 25:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000 && PICS_SKIP_SAMPLE_APP
      verification: |
          ./chip-tool accesscontrol read acl 1 0
           On TH1(Chiptool) ,  Verify that the AccessControlEntryStruct contains 2 elements with Subjects as null  and  and Target as  TARGETS

          [1662016086.501582][3138:3143] CHIP:TOO:   ACL: 2 entries
          [1662016086.501643][3138:3143] CHIP:TOO:     [1]: {
          [1662016086.501673][3138:3143] CHIP:TOO:       Privilege: 5
          [1662016086.501698][3138:3143] CHIP:TOO:       AuthMode: 2
          [1662016086.501727][3138:3143] CHIP:TOO:       Subjects: 1 entries
          [1662016086.501758][3138:3143] CHIP:TOO:         [1]: 112233
          [1662016086.501786][3138:3143] CHIP:TOO:       Targets: null
          [1662016086.501811][3138:3143] CHIP:TOO:       FabricIndex: 1
          [1662016086.501835][3138:3143] CHIP:TOO:      }
          [1662016086.501873][3138:3143] CHIP:TOO:     [2]: {
          [1662016086.501899][3138:3143] CHIP:TOO:       Privilege: 3
          [1662016086.501924][3138:3143] CHIP:TOO:       AuthMode: 2
          [1662016086.501948][3138:3143] CHIP:TOO:       Subjects: null
          [1662016086.501979][3138:3143] CHIP:TOO:       Targets: 2 entries
          [1662016086.502016][3138:3143] CHIP:TOO:         [1]: {
          [1662016086.502043][3138:3143] CHIP:TOO:           Cluster: 40
          [1662016086.502069][3138:3143] CHIP:TOO:           Endpoint: null
          [1662016086.502094][3138:3143] CHIP:TOO:           DeviceType: null
          [1662016086.502117][3138:3143] CHIP:TOO:          }
          [1662016086.502148][3138:3143] CHIP:TOO:         [2]: {
          [1662016086.502174][3138:3143] CHIP:TOO:           Cluster: 28
          [1662016086.502198][3138:3143] CHIP:TOO:           Endpoint: null
          [1662016086.502223][3138:3143] CHIP:TOO:           DeviceType: null
          [1662016086.502247][3138:3143] CHIP:TOO:          }
          [1662016086.502273][3138:3143] CHIP:TOO:       FabricIndex: 1
      cluster: "LogCommands"
      command: "UserPrompt"
      arguments:
          values:
              - name: "message"
                value: "Enter 'y' after success"
              - name: "expectedValue"
                value: "y"

    - label:
          "Step 26:TH1 reads AccessControl cluster AccessControlEntriesPerFabric
          attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "AccessControlEntriesPerFabric"
      response:
          saveAs: MAXENTRIES

    - label:
          "Step 27:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing
          MAXENTRIES elements 1.struct Privilege field: Administer (5) AuthMode
          field: CASE (2) Subjects field: [N1] Targets field: null 2.struct
          Privilege field: Operate (3) AuthMode field: CASE (2) Subjects field:
          null Targets field: null subsequent elements same as second element"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label: "Step 28:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 29:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: PASE (1) Subjects field: null Targets
          field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 1,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label: "Step 30:TH1 reads AccessControl cluster ACL attribute"
      PICS: ACL.S.A0000
      command: "readAttribute"
      attribute: "ACL"
      response:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]

    - label:
          "Step 31:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Administer (5) AuthMode field: Group (3) Subjects field: null Targets
          field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 5,
                      AuthMode: 3,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 32:TH1 writes DUT Endpoint 0 AccessControl cluster ACL
          attribute, value is list of AccessControlEntryStruct containing 2
          elements 1.struct Privilege field: Administer (5) AuthMode field: CASE
          (2) Subjects field: [N1] Targets field: null 2.struct Privilege field:
          invalid value (not 1-5) AuthMode field: CASE (2) Subjects field: null
          Targets field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: "6",
                      AuthMode: 3,
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 33:TH1 writes AccessControl cluster ACL attribute, value is list
          of AccessControlEntryStruct containing 2 elements"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: "6",
                      AuthMode: "4",
                      Subjects: null,
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 34:TH1 writes AccessControl cluster ACL attribute, value is list
          of AccessControlEntryStruct containing 2 elements"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: [0],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 35:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field:
          [0xFFFFFFFFFFFFFFFF] Targets field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: ["18446744073709551615"],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 36:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field:
          [0xFFFFFFFD00000000] Targets field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: ["18446744060824649728"],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 37:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements struct
          Privilege field: Administer (5) AuthMode field: CASE (2) Subjects
          field: [N1] Targets field: null struct Privilege field: Operate (3)
          AuthMode field: CASE (2) Subjects field: [0xFFFFFFFFFFFF0000] Targets
          field: null"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: ["18446744073709486080"],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 38:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: null Targets
          field: [{}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [{ Cluster: null, Endpoint: null, DeviceType: null }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 39:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: null Targets
          field: [{Cluster: 0xFFFFFFFF}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [
                              {
                                  Cluster: 4294967295,
                                  Endpoint: null,
                                  DeviceType: null,
                              },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 40:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements 1.
          struct  Privilege field: Administer (5)  AuthMode field: CASE
          (2)  Subjects field: [N1]  Targets field: null 2. struct  Privilege
          field: Operate (3)  AuthMode field: CASE (2)  Subjects field:
          null  Targets field: [{Endpoint: 65535}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [
                              {
                                  Cluster: null,
                                  Endpoint: 65535,
                                  DeviceType: null,
                              },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 41:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: null Targets
          field: [{DeviceType: 0xFFFFFFFF}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [
                              {
                                  Cluster: null,
                                  Endpoint: null,
                                  DeviceType: 4294967295,
                              },
                          ],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 42:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: null Targets
          field: [{Endpoint: 22, DeviceType: 33}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets:
                          [{ Cluster: null, Endpoint: 22, DeviceType: 33 }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 43:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is list of AccessControlEntryStruct containing 2 elements
          1.struct Privilege field: Administer (5) AuthMode field: CASE (2)
          Subjects field: [N1] Targets field: null 2.struct Privilege field:
          Operate (3) AuthMode field: CASE (2) Subjects field: null Targets
          field: [{Cluster: 11, Endpoint: 22, DeviceType: 33}]"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value:
              [
                  {
                      Privilege: 5,
                      AuthMode: 2,
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                      FabricIndex: CurrentFabricIndex,
                  },
                  {
                      Privilege: 3,
                      AuthMode: 2,
                      Subjects: null,
                      Targets: [{ Cluster: 11, Endpoint: 22, DeviceType: 33 }],
                      FabricIndex: CurrentFabricIndex,
                  },
              ]
      response:
          error: CONSTRAINT_ERROR

    - label:
          "Step 44:TH1 writes DUT Endpoint 0 AccessControl cluster ACL attribute
          value is an empty list"
      PICS: ACL.S.A0000
      command: "writeAttribute"
      attribute: "ACL"
      arguments:
          value: [
                  {
                      FabricIndex: 1,
                      Privilege: 5, # administer
                      AuthMode: 2, # case
                      Subjects: [CommissionerNodeId],
                      Targets: null,
                  },
              ]
