# 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:
    125.2.3. [TC-G-2.3] Commands - GetGroupMembership, AddGroupIfIdentifying
    [DUT-Server]

PICS:
    - G.S

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

tests:
    - label: "TH is commissioned with DUT"
      verification: |

      disabled: true

    - label:
          "Pre-Conditions: TH reads the MaxGroupsPerFabric from Group key
          Management Cluster and saves it as maxgroups"
      verification: |
          ./chip-tool groupkeymanagement read max-groups-per-fabric 1 0

          Verify the "MaxGroupsPerFabric value" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683802556.948465][41067:41069] CHIP:DMG: }
          [1683802556.948507][41067:41069] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0002 DataVersion: 1698601848
          [1683802556.948520][41067:41069] CHIP:TOO:   MaxGroupsPerFabric: 12
      disabled: true

    - label: |
          Pre-Conditions: If maxgroups>0, proceed with the following steps

          TH generates fabric-unique GroupID, GroupName, random key, EpochKey0
          and GroupKeySetID.

          TH generates an EpochKey and saves as epoch_key_set1_epoch0

          TH sends a KeySetWriteCommand to the Group Key Management cluster with
          the following fields set in the GroupKeySet struct:

          GroupKeySetId is 1

          EpochKey0 is epoch_key_set0_epoch0

          GroupKeySecurityPolicy = TrustFirst (1)

          GroupKeyMulticastPolicy = PerGroupID (0)

          EpochStartTime0 = 0

          TH binds GroupId(0x0002 to (maxgroups+1)) with GroupKeySetID in the
          GroupKeyMap attribute list on GroupKeyManagement cluster with the
          values provided in the above steps

          TH binds GroupId(0x0006 to (maxgroups+1)) with GroupKeySetID in the
          GroupKeyMap attribute list on GroupKeyManagement cluster with the
          values provided in the above steps
      verification: |
          Execute the following command in TH to generate the pre-condition step :

          ./chip-tool groupkeymanagement key-set-write '{"groupKeySetID": 1,
          "groupKeySecurityPolicy": 1, "epochKey0":
          "d0d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime0": 2220000,"epochKey1":
          "d1d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime1": 2220001,"epochKey2":
          "d2d1d2d3d4d5d6d7d8d9dadbdcdddedf", "epochStartTime2": 2220002 }' 1 0

          Verify the "status is success" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658316948.574526][4039:4044] CHIP:DMG:                                StatusIB =
          [1658316948.574561][4039:4044] CHIP:DMG:                                {
          [1658316948.574597][4039:4044] CHIP:DMG:                                   status = 0x00 (SUCCESS),
          [1658316948.574632][4039:4044] CHIP:DMG:                                },

          Before adding the Groups by AddGroup execute below command

          ./chip-tool groupkeymanagement write group-key-map '[{"groupId":2, "groupKeySetID": 1, "fabricIndex": 1},{"groupId": 3, "groupKeySetID": 1,"fabricIndex": 1} ]' 1 0

          Verify the "status is success" on the TH Log and below is the sample log provided for the raspi platform:

          [1662655615.539611][229172:229177] CHIP:DMG:                 AttributeStatusIB =
          [1662655615.539623][229172:229177] CHIP:DMG:                 {
          [1662655615.539633][229172:229177] CHIP:DMG:                         AttributePathIB =
          [1662655615.539642][229172:229177] CHIP:DMG:                         {
          [1662655615.539648][229172:229177] CHIP:DMG:                                 Endpoint = 0x0,
          [1662655615.539664][229172:229177] CHIP:DMG:                                 Cluster = 0x3f,
          [1662655615.539677][229172:229177] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1662655615.539688][229172:229177] CHIP:DMG:                                 ListIndex = Null,
          [1662655615.539693][229172:229177] CHIP:DMG:                         }
          [1662655615.539707][229172:229177] CHIP:DMG:
          [1662655615.539715][229172:229177] CHIP:DMG:                         StatusIB =
          [1662655615.539729][229172:229177] CHIP:DMG:                         {
          [1662655615.539737][229172:229177] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1662655615.539743][229172:229177] CHIP:DMG:                         },
          [1662655615.539753][229172:229177] CHIP:DMG:
          [1662655615.539766][229172:229177] CHIP:DMG:                 },
          [1662655615.539781][229172:229177] CHIP:DMG:
          [1662655615.539792][229172:229177] CHIP:DMG:                 AttributeStatusIB =
          [1662655615.539802][229172:229177] CHIP:DMG:                 {
          [1662655615.539810][229172:229177] CHIP:DMG:                         AttributePathIB =
          [1662655615.539816][229172:229177] CHIP:DMG:                         {
          [1662655615.539834][229172:229177] CHIP:DMG:                                 Endpoint = 0x0,
          [1662655615.539844][229172:229177] CHIP:DMG:                                 Cluster = 0x3f,
          [1662655615.539851][229172:229177] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1662655615.539858][229172:229177] CHIP:DMG:                                 ListIndex = Null,
          [1662655615.539864][229172:229177] CHIP:DMG:                         }
          [1662655615.539877][229172:229177] CHIP:DMG:
          [1662655615.539885][229172:229177] CHIP:DMG:                         StatusIB =
          [1662655615.539896][229172:229177] CHIP:DMG:                         {
          [1662655615.539904][229172:229177] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1662655615.539910][229172:229177] CHIP:DMG:                         },

          Before adding the Groups(0x0006 to Maxgroup)  by AddGroupIfIdentifying command execute this command

          ./chip-tool groupkeymanagement write group-key-map '[{"groupId":6, "groupKeySetID": 1, "fabricIndex": 1},{"groupId": 7, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":8, "groupKeySetID": 1, "fabricIndex": 1},{"groupId": 9, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":10, "groupKeySetID": 1, "fabricIndex": 1},{"groupId": 11, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":12, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":13, "groupKeySetID": 1, "fabricIndex": 1},{"groupId": 14, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":15, "groupKeySetID": 1, "fabricIndex": 1},{"groupId": 16, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":17, "groupKeySetID": 1, "fabricIndex": 1}]' 1 0

          Verify the "status is success" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882354.197161][7723:7725] CHIP:DMG: WriteResponseMessage =
          [1683882354.197166][7723:7725] CHIP:DMG: {
          [1683882354.197168][7723:7725] CHIP:DMG:         AttributeStatusIBs =
          [1683882354.197176][7723:7725] CHIP:DMG:         [
          [1683882354.197180][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197188][7723:7725] CHIP:DMG:                 {
          [1683882354.197193][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197198][7723:7725] CHIP:DMG:                         {
          [1683882354.197203][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197208][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197213][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197217][7723:7725] CHIP:DMG:                         }
          [1683882354.197224][7723:7725] CHIP:DMG:
          [1683882354.197228][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197233][7723:7725] CHIP:DMG:                         {
          [1683882354.197237][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197242][7723:7725] CHIP:DMG:                         },
          [1683882354.197247][7723:7725] CHIP:DMG:
          [1683882354.197250][7723:7725] CHIP:DMG:                 },
          [1683882354.197259][7723:7725] CHIP:DMG:
          [1683882354.197263][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197268][7723:7725] CHIP:DMG:                 {
          [1683882354.197271][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197276][7723:7725] CHIP:DMG:                         {
          [1683882354.197280][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197285][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197290][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197295][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197299][7723:7725] CHIP:DMG:                         }
          [1683882354.197306][7723:7725] CHIP:DMG:
          [1683882354.197310][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197315][7723:7725] CHIP:DMG:                         {
          [1683882354.197319][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197324][7723:7725] CHIP:DMG:                         },
          [1683882354.197328][7723:7725] CHIP:DMG:
          [1683882354.197332][7723:7725] CHIP:DMG:                 },
          [1683882354.197343][7723:7725] CHIP:DMG:
          [1683882354.197347][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197351][7723:7725] CHIP:DMG:                 {
          [1683882354.197353][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197356][7723:7725] CHIP:DMG:                         {
          [1683882354.197358][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197361][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197364][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197366][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197368][7723:7725] CHIP:DMG:                         }
          [1683882354.197372][7723:7725] CHIP:DMG:
          [1683882354.197374][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197377][7723:7725] CHIP:DMG:                         {
          [1683882354.197379][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197381][7723:7725] CHIP:DMG:                         },
          [1683882354.197384][7723:7725] CHIP:DMG:
          [1683882354.197385][7723:7725] CHIP:DMG:                 },
          [1683882354.197391][7723:7725] CHIP:DMG:
          [1683882354.197393][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197395][7723:7725] CHIP:DMG:                 {
          [1683882354.197398][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197403][7723:7725] CHIP:DMG:                         {
          [1683882354.197408][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197413][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197417][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197421][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197426][7723:7725] CHIP:DMG:                         }
          [1683882354.197432][7723:7725] CHIP:DMG:
          [1683882354.197437][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197441][7723:7725] CHIP:DMG:                         {
          [1683882354.197445][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197450][7723:7725] CHIP:DMG:                         },
          [1683882354.197454][7723:7725] CHIP:DMG:
          [1683882354.197458][7723:7725] CHIP:DMG:                 },
          [1683882354.197467][7723:7725] CHIP:DMG:
          [1683882354.197471][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197475][7723:7725] CHIP:DMG:                 {
          [1683882354.197479][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197483][7723:7725] CHIP:DMG:                         {
          [1683882354.197488][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197493][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197497][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197502][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197506][7723:7725] CHIP:DMG:                         }
          [1683882354.197512][7723:7725] CHIP:DMG:
          [1683882354.197516][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197521][7723:7725] CHIP:DMG:                         {
          [1683882354.197525][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197529][7723:7725] CHIP:DMG:                         },
          [1683882354.197534][7723:7725] CHIP:DMG:
          [1683882354.197538][7723:7725] CHIP:DMG:                 },
          [1683882354.197547][7723:7725] CHIP:DMG:
          [1683882354.197551][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197555][7723:7725] CHIP:DMG:                 {
          [1683882354.197559][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197563][7723:7725] CHIP:DMG:                         {
          [1683882354.197568][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197573][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197578][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197582][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197586][7723:7725] CHIP:DMG:                         }
          [1683882354.197593][7723:7725] CHIP:DMG:
          [1683882354.197597][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197602][7723:7725] CHIP:DMG:                         {
          [1683882354.197606][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197610][7723:7725] CHIP:DMG:                         },
          [1683882354.197615][7723:7725] CHIP:DMG:
          [1683882354.197618][7723:7725] CHIP:DMG:                 },
          [1683882354.197627][7723:7725] CHIP:DMG:
          [1683882354.197631][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197635][7723:7725] CHIP:DMG:                 {
          [1683882354.197640][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197644][7723:7725] CHIP:DMG:                         {
          [1683882354.197649][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197653][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197658][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197663][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197667][7723:7725] CHIP:DMG:                         }
          [1683882354.197673][7723:7725] CHIP:DMG:
          [1683882354.197677][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197682][7723:7725] CHIP:DMG:                         {
          [1683882354.197687][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197690][7723:7725] CHIP:DMG:                         },
          [1683882354.197695][7723:7725] CHIP:DMG:
          [1683882354.197699][7723:7725] CHIP:DMG:                 },
          [1683882354.197708][7723:7725] CHIP:DMG:
          [1683882354.197712][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197716][7723:7725] CHIP:DMG:                 {
          [1683882354.197720][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197724][7723:7725] CHIP:DMG:                         {
          [1683882354.197729][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197733][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197738][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197743][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197747][7723:7725] CHIP:DMG:                         }
          [1683882354.197753][7723:7725] CHIP:DMG:
          [1683882354.197757][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197762][7723:7725] CHIP:DMG:                         {
          [1683882354.197767][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197771][7723:7725] CHIP:DMG:                         },
          [1683882354.197776][7723:7725] CHIP:DMG:
          [1683882354.197779][7723:7725] CHIP:DMG:                 },
          [1683882354.197789][7723:7725] CHIP:DMG:
          [1683882354.197792][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197797][7723:7725] CHIP:DMG:                 {
          [1683882354.197800][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197805][7723:7725] CHIP:DMG:                         {
          [1683882354.197809][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197814][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197819][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197824][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197828][7723:7725] CHIP:DMG:                         }
          [1683882354.197835][7723:7725] CHIP:DMG:
          [1683882354.197839][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197843][7723:7725] CHIP:DMG:                         {
          [1683882354.197848][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197852][7723:7725] CHIP:DMG:                         },
          [1683882354.197857][7723:7725] CHIP:DMG:
          [1683882354.197861][7723:7725] CHIP:DMG:                 },
          [1683882354.197870][7723:7725] CHIP:DMG:
          [1683882354.197874][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197878][7723:7725] CHIP:DMG:                 {
          [1683882354.197882][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197886][7723:7725] CHIP:DMG:                         {
          [1683882354.197891][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197896][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197900][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197905][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197909][7723:7725] CHIP:DMG:                         }
          [1683882354.197917][7723:7725] CHIP:DMG:
          [1683882354.197921][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.197925][7723:7725] CHIP:DMG:                         {
          [1683882354.197930][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.197934][7723:7725] CHIP:DMG:                         },
          [1683882354.197939][7723:7725] CHIP:DMG:
          [1683882354.197943][7723:7725] CHIP:DMG:                 },
          [1683882354.197952][7723:7725] CHIP:DMG:
          [1683882354.197956][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.197960][7723:7725] CHIP:DMG:                 {
          [1683882354.197963][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.197968][7723:7725] CHIP:DMG:                         {
          [1683882354.197972][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.197976][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.197981][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.197984][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.197989][7723:7725] CHIP:DMG:                         }
          [1683882354.197995][7723:7725] CHIP:DMG:
          [1683882354.197998][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.198002][7723:7725] CHIP:DMG:                         {
          [1683882354.198007][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.198011][7723:7725] CHIP:DMG:                         },
          [1683882354.198015][7723:7725] CHIP:DMG:
          [1683882354.198019][7723:7725] CHIP:DMG:                 },
          [1683882354.198028][7723:7725] CHIP:DMG:
          [1683882354.198032][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.198036][7723:7725] CHIP:DMG:                 {
          [1683882354.198040][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.198044][7723:7725] CHIP:DMG:                         {
          [1683882354.198049][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.198053][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.198058][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.198063][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.198067][7723:7725] CHIP:DMG:                         }
          [1683882354.198073][7723:7725] CHIP:DMG:
          [1683882354.198077][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.198081][7723:7725] CHIP:DMG:                         {
          [1683882354.198086][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.198090][7723:7725] CHIP:DMG:                         },
          [1683882354.198094][7723:7725] CHIP:DMG:
          [1683882354.198098][7723:7725] CHIP:DMG:                 },
          [1683882354.198107][7723:7725] CHIP:DMG:
          [1683882354.198111][7723:7725] CHIP:DMG:                 AttributeStatusIB =
          [1683882354.198115][7723:7725] CHIP:DMG:                 {
          [1683882354.198119][7723:7725] CHIP:DMG:                         AttributePathIB =
          [1683882354.198123][7723:7725] CHIP:DMG:                         {
          [1683882354.198128][7723:7725] CHIP:DMG:                                 Endpoint = 0x0,
          [1683882354.198132][7723:7725] CHIP:DMG:                                 Cluster = 0x3f,
          [1683882354.198137][7723:7725] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1683882354.198142][7723:7725] CHIP:DMG:                                 ListIndex = Null,
          [1683882354.198146][7723:7725] CHIP:DMG:                         }
          [1683882354.198152][7723:7725] CHIP:DMG:
          [1683882354.198156][7723:7725] CHIP:DMG:                         StatusIB =
          [1683882354.198160][7723:7725] CHIP:DMG:                         {
          [1683882354.198165][7723:7725] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1683882354.198169][7723:7725] CHIP:DMG:                         },
          [1683882354.198174][7723:7725] CHIP:DMG:
          [1683882354.198178][7723:7725] CHIP:DMG:                 },
          [1683882354.198184][7723:7725] CHIP:DMG:
          [1683882354.198187][7723:7725] CHIP:DMG:         ],
          [1683882354.198223][7723:7725] CHIP:DMG:
          [1683882354.198227][7723:7725] CHIP:DMG:         InteractionModelRevision = 1
          [1683882354.198230][7723:7725] CHIP:DMG: }

          Before adding the Groups (Maxgroup+1) by AddGroupIfIdentifying execute below command  which is used to check the  Resource_Exhausted Condition

          ./chip-tool groupkeymanagement write group-key-map '[{"groupId":18, "groupKeySetID": 1, "fabricIndex": 1},{"groupId":19, "groupKeySetID": 1, "fabricIndex": 1}]' 1 0

          Verify the "status is success" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1674551849.075921][20994:20996] CHIP:DMG: WriteResponseMessage =
          [1674551849.075924][20994:20996] CHIP:DMG: {
          [1674551849.075926][20994:20996] CHIP:DMG:         AttributeStatusIBs =
          [1674551849.075931][20994:20996] CHIP:DMG:         [
          [1674551849.075934][20994:20996] CHIP:DMG:                 AttributeStatusIB =
          [1674551849.075937][20994:20996] CHIP:DMG:                 {
          [1674551849.075940][20994:20996] CHIP:DMG:                         AttributePathIB =
          [1674551849.075943][20994:20996] CHIP:DMG:                         {
          [1674551849.075947][20994:20996] CHIP:DMG:                                 Endpoint = 0x0,
          [1674551849.075950][20994:20996] CHIP:DMG:                                 Cluster = 0x3f,
          [1674551849.075953][20994:20996] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1674551849.075956][20994:20996] CHIP:DMG:                         }
          [1674551849.075961][20994:20996] CHIP:DMG:
          [1674551849.075964][20994:20996] CHIP:DMG:                         StatusIB =
          [1674551849.075967][20994:20996] CHIP:DMG:                         {
          [1674551849.075971][20994:20996] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1674551849.075974][20994:20996] CHIP:DMG:                         },
          [1674551849.075977][20994:20996] CHIP:DMG:
          [1674551849.075980][20994:20996] CHIP:DMG:                 },
          [1674551849.075986][20994:20996] CHIP:DMG:
          [1674551849.075989][20994:20996] CHIP:DMG:                 AttributeStatusIB =
          [1674551849.075991][20994:20996] CHIP:DMG:                 {
          [1674551849.075994][20994:20996] CHIP:DMG:                         AttributePathIB =
          [1674551849.075997][20994:20996] CHIP:DMG:                         {
          [1674551849.076000][20994:20996] CHIP:DMG:                                 Endpoint = 0x0,
          [1674551849.076003][20994:20996] CHIP:DMG:                                 Cluster = 0x3f,
          [1674551849.076006][20994:20996] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1674551849.076010][20994:20996] CHIP:DMG:                                 ListIndex = Null,
          [1674551849.076012][20994:20996] CHIP:DMG:                         }
          [1674551849.076017][20994:20996] CHIP:DMG:
          [1674551849.076020][20994:20996] CHIP:DMG:                         StatusIB =
          [1674551849.076022][20994:20996] CHIP:DMG:                         {
          [1674551849.076025][20994:20996] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1674551849.076028][20994:20996] CHIP:DMG:                         },
          [1674551849.076031][20994:20996] CHIP:DMG:
          [1674551849.076034][20994:20996] CHIP:DMG:                 },
          [1674551849.076040][20994:20996] CHIP:DMG:
          [1674551849.076043][20994:20996] CHIP:DMG:                 AttributeStatusIB =
          [1674551849.076046][20994:20996] CHIP:DMG:                 {
          [1674551849.076048][20994:20996] CHIP:DMG:                         AttributePathIB =
          [1674551849.076051][20994:20996] CHIP:DMG:                         {
          [1674551849.076054][20994:20996] CHIP:DMG:                                 Endpoint = 0x0,
          [1674551849.076057][20994:20996] CHIP:DMG:                                 Cluster = 0x3f,
          [1674551849.076060][20994:20996] CHIP:DMG:                                 Attribute = 0x0000_0000,
          [1674551849.076063][20994:20996] CHIP:DMG:                                 ListIndex = Null,
          [1674551849.076066][20994:20996] CHIP:DMG:                         }
          [1674551849.076071][20994:20996] CHIP:DMG:
          [1674551849.076074][20994:20996] CHIP:DMG:                         StatusIB =
          [1674551849.076076][20994:20996] CHIP:DMG:                         {
          [1674551849.076080][20994:20996] CHIP:DMG:                                 status = 0x00 (SUCCESS),
          [1674551849.076082][20994:20996] CHIP:DMG:                         },
          [1674551849.076085][20994:20996] CHIP:DMG:
          [1674551849.076088][20994:20996] CHIP:DMG:                 },
          [1674551849.076092][20994:20996] CHIP:DMG:
          [1674551849.076094][20994:20996] CHIP:DMG:         ],
          [1674551849.076102][20994:20996] CHIP:DMG:
          [1674551849.076105][20994:20996] CHIP:DMG:         InteractionModelRevision = 1
          [1674551849.076108][20994:20996] CHIP:DMG: }
      disabled: true

    - label: "DUT supports Identify cluster"
      verification: |

      disabled: true

    - label:
          "TH sends AddGroup command to DUT as unicast with the following fields
          : GroupID as 0x0002 GroupName as Gp2"
      PICS: G.S.C00.Rsp && G.S.C00.Tx
      verification: |
          ./chip-tool groups add-group 0x0002 gp2 1 0

          Verify the "status is SUCCESS and groupid  is 0x0002" on the TH(Chip-tool)  Log  and below is the sample log provided for the raspi platform:

          [1653552285.195099][2464:2469] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Command 0x0000_0000
          [1653552285.197783][2464:2469] CHIP:TOO:   AddGroupResponse: {
          [1653552285.197849][2464:2469] CHIP:TOO:     status: 0
          [1653552285.197877][2464:2469] CHIP:TOO:     groupId: 2
          [1653552285.197933][2464:2469] CHIP:TOO:    }
      disabled: true

    - label: "TH reads GroupTable attribute from the GroupKeyManagement cluster"
      PICS: GRPKEY.S.A0001
      verification: |
          ./chip-tool groupkeymanagement read group-table 1 0

          Verify the "grouptable entries" , GroupID as 0x0002, GroupName as Gp2 on the TH(Chip-tool)  Log  and below is the sample log provided for the raspi platform:

          [1674551108.507399][20730:20732] CHIP:DMG: }
          [1674551108.507695][20730:20732] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 1314349260
          [1674551108.507745][20730:20732] CHIP:TOO:   GroupTable: 1 entries
          [1674551108.507824][20730:20732] CHIP:TOO:     [1]: {
          [1674551108.507857][20730:20732] CHIP:TOO:       GroupId: 2
          [1674551108.507878][20730:20732] CHIP:TOO:       Endpoints: 1 entries
          [1674551108.507901][20730:20732] CHIP:TOO:         [1]: 0
          [1674551108.507920][20730:20732] CHIP:TOO:       GroupName: gp2
          [1674551108.507932][20730:20732] CHIP:TOO:       FabricIndex: 1
          [1674551108.507942][20730:20732] CHIP:TOO:      }
      disabled: true

    - label:
          "If maxgroups > 1 TH sends AddGroup command to DUT as unicast with the
          following fields : GroupID as 0x0003 GroupName as Gp3"
      PICS: G.S.C00.Rsp && G.S.C00.Tx
      verification: |
          ./chip-tool groups add-group 0x0003 gp3 1 0

          Verify the "status is SUCCESS and GroupID is 0x0003" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1674551134.645686][20738:20740] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0004 Command=0x0000_0000
          [1674551134.645698][20738:20740] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Command 0x0000_0000
          [1674551134.645709][20738:20740] CHIP:TOO:   AddGroupResponse: {
          [1674551134.645714][20738:20740] CHIP:TOO:     status: 0
          [1674551134.645717][20738:20740] CHIP:TOO:     groupID: 3
          [1674551134.645719][20738:20740] CHIP:TOO:    }
      disabled: true

    - label:
          "If maxgroups > 1, TH reads GroupTable attribute from the
          GroupKeyManagement cluster"
      PICS: GRPKEY.S.A0001
      verification: |
          ./chip-tool groupkeymanagement read group-table 1 0

          Verify the "grouptable entries" , GroupId as 0x0003 and GroupName as Gp3 on the TH(Chip-tool)  Log and  below is the sample log provided for the raspi platform:

          [1674551165.827036][20746:20748] CHIP:DMG: }
          [1674551165.827146][20746:20748] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 1314349260
          [1674551165.827163][20746:20748] CHIP:TOO:   GroupTable: 2 entries
          [1674551165.827176][20746:20748] CHIP:TOO:     [1]: {
          [1674551165.827182][20746:20748] CHIP:TOO:       GroupId: 2
          [1674551165.827186][20746:20748] CHIP:TOO:       Endpoints: 1 entries
          [1674551165.827191][20746:20748] CHIP:TOO:         [1]: 0
          [1674551165.827194][20746:20748] CHIP:TOO:       GroupName: gp2
          [1674551165.827197][20746:20748] CHIP:TOO:       FabricIndex: 1
          [1674551165.827200][20746:20748] CHIP:TOO:      }
          [1674551165.827205][20746:20748] CHIP:TOO:     [2]: {
          [1674551165.827208][20746:20748] CHIP:TOO:       GroupId: 3
          [1674551165.827211][20746:20748] CHIP:TOO:       Endpoints: 1 entries
          [1674551165.827214][20746:20748] CHIP:TOO:         [1]: 0
          [1674551165.827217][20746:20748] CHIP:TOO:       GroupName: gp3
          [1674551165.827219][20746:20748] CHIP:TOO:       FabricIndex: 1
          [1674551165.827222][20746:20748] CHIP:TOO:      }
      disabled: true

    - label:
          "TH sends GetGroupMembership command to DUT on PIXIT.G.ENDPOINT with
          the following fields : GroupList as NULL"
      PICS: G.S.C02.Rsp && G.S.C02.Tx
      verification: |
          ./chip-tool groups get-group-membership [] 1 0

          Verify the "grouplist" entries are in the inclusive range of 0x0001 - 0xffff and Capacity is in the inclusive range of 0 to 254 or null
          on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:


          [1653552493.052711][2501:2506] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0004 Command 0x0000_0002
          [1653552493.052792][2501:2506] CHIP:TOO:   GetGroupMembershipResponse: {
          [1653552493.052819][2501:2506] CHIP:TOO:     capacity: null
          [1653552493.052870][2501:2506] CHIP:TOO:     groupList: 2 entries
          [1653552493.052922][2501:2506] CHIP:TOO:       [1]: 2
          [1653552493.052950][2501:2506] CHIP:TOO:       [2]: 3
          [1653552493.052978][2501:2506] CHIP:TOO:    }
      disabled: true

    - label:
          "TH sends GetGroupMembership command to DUT on PIXIT.G.ENDPOINT with
          the following fields : GroupList as [0x0002]"
      PICS: G.S.C02.Rsp && G.S.C02.Tx
      verification: |
          ./chip-tool groups get-group-membership [0002] 1 0

          Verify the "grouplist" entry has one item 0x0002 and Capacity is in the inclusive range of 0 to 254 or null
          on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1653294426.515523][3638:3643] CHIP:TOO:   GetGroupMembershipResponse: {
          [1653294426.515571][3638:3643] CHIP:TOO:     capacity: null
          [1653294426.515649][3638:3643] CHIP:TOO:     groupList: 1 entries
          [1653294426.515737][3638:3643] CHIP:TOO:       [1]: 2
          [1653294426.515916][3638:3643] CHIP:TOO:    }
      disabled: true

    - label:
          "if maxgroups > 1, TH sends GetGroupMembership command to DUT on
          PIXIT.G.ENDPOINT as unicast with the following fields : GroupList as
          [0x0002, 0x0003]"
      PICS: G.S.C02.Rsp && G.S.C02.Tx
      verification: |
          ./chip-tool groups get-group-membership [0002,0003] 1 0

          Verify the "grouplist" entries has 2 items 0x0002 , 0x0003 and Capacity is in the inclusive range of 0 to 254 or null
          on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1653294490.030740][3646:3651] CHIP:TOO:   GetGroupMembershipResponse: {
          [1653294490.030775][3646:3651] CHIP:TOO:     capacity: null
          [1653294490.030838][3646:3651] CHIP:TOO:     groupList: 2 entries
          [1653294490.030907][3646:3651] CHIP:TOO:       [1]: 2
          [1653294490.030943][3646:3651] CHIP:TOO:       [2]: 3
          [1653294490.030979][3646:3651] CHIP:TOO:    }
      disabled: true

    - label: "TH sends RemoveAllGroups command to DUT as unicast method"
      PICS: G.S.C04.Rsp
      verification: |
          ./chip-tool groups remove-all-groups 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1651224377.831704][2989:2994] CHIP:DMG:                                StatusIB =
          [1651224377.831757][2989:2994] CHIP:DMG:                                {
          [1651224377.831812][2989:2994] CHIP:DMG:                                      status = 0x00 (SUCCESS),
          [1651224377.831866][2989:2994] CHIP:DMG:                                },
          [1651224377.832439][2989:2994] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_0004 Command=0x0000_0004 Status=0x0
      disabled: true

    - label:
          "TH sends Identify command to DUT with the IdentifyTime as (0x0078)
          120 seconds"
      PICS: I.S.C00.Rsp
      verification: |
          ./chip-tool identify identify 0x0078 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658306666.592846][3044:3049] CHIP:DMG:                                StatusIB =
          [1658306666.592889][3044:3049] CHIP:DMG:                                {
          [1658306666.592962][3044:3049] CHIP:DMG:                                        status = 0x00 (SUCCESS),
          [1658306666.593007][3044:3049] CHIP:DMG:                                },
      disabled: true

    - label: "TH reads immediately IdentifyTime attribute from DUT"
      PICS: I.S.A0000
      verification: |
          ./chip-tool identify read identify-time 1 0

          Verify the "identifytime" attribute has a value approximately equal to 0x0078(120) on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1674551847.513881][20976:20978] CHIP:DMG: }
          [1674551847.514009][20976:20978] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0003 Attribute 0x0000_0000 DataVersion: 216654730
          [1674551847.514042][20976:20978] CHIP:TOO:   IdentifyTime: 120
      disabled: true

    - label:
          "If maxgroups>0, TH sends AddGroupIfIdentifying command to DUT as
          unicast method with the following fields: GroupID as 0x0006 GroupName
          as Gp6"
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0006 gp6 1 0

          Verify the "status is SUCCESS" and GroupId is 0x0006 on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:


          [1653552667.307794][2571:2576] CHIP:DMG:                                StatusIB =
          [1653552667.307831][2571:2576] CHIP:DMG:                                {
          [1653552667.307881][2571:2576] CHIP:DMG:                                   status = 0x00 (SUCCESS),
          [1653552667.307922][2571:2576] CHIP:DMG:                                },
      disabled: true

    - label: "TH reads GroupTable attribute from the GroupKeyManagement cluster"
      PICS: GRPKEY.S.A0001
      verification: |
          ./chip-tool groupkeymanagement read group-table 1 0

          Verify "group table" entry has groupid 6,  GroupName  Gp6  on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1674551848.294776][20985:20987] CHIP:DMG: }
          [1674551848.294875][20985:20987] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 1314349287
          [1674551848.294904][20985:20987] CHIP:TOO:   GroupTable: 1 entries
          [1674551848.294924][20985:20987] CHIP:TOO:     [1]: {
          [1674551848.294929][20985:20987] CHIP:TOO:       GroupId: 6
          [1674551848.294935][20985:20987] CHIP:TOO:       Endpoints: 1 entries
          [1674551848.294941][20985:20987] CHIP:TOO:         [1]: 0
          [1674551848.294945][20985:20987] CHIP:TOO:       GroupName: gp6
          [1674551848.294948][20985:20987] CHIP:TOO:       FabricIndex: 1
          [1674551848.294951][20985:20987] CHIP:TOO:      }
          [1674551848.294982][20985:20987] CHIP:EM: <<< [E:163
      disabled: true

    - label:
          "If maxgroups>1, TH sends AddGroupIfIdentifying command to DUT as
          unicast method with the following fields: GroupID as 0x0007 GroupName
          as Gp7"
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0007 gp7 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:


          [1658306847.237724][3125:3130] CHIP:DMG:                                StatusIB =
          [1658306847.237765][3125:3130] CHIP:DMG:                                {
          [1658306847.237818][3125:3130] CHIP:DMG:                                   status = 0x00 (SUCCESS),
          [1658306847.237869][3125:3130] CHIP:DMG:                                },
      disabled: true

    - label: "TH reads GroupTable attribute from the GroupKeyManagement cluster"
      PICS: GRPKEY.S.A0001
      verification: |
          ./chip-tool groupkeymanagement read group-table 1 0

          Verify the "grouptable" has an entry,  GroupName as Gp7 on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1674551848.817117][20991:20993] CHIP:DMG: }
          [1674551848.817230][20991:20993] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 1314349287
          [1674551848.817250][20991:20993] CHIP:TOO:   GroupTable: 2 entries
          [1674551848.817271][20991:20993] CHIP:TOO:     [1]: {
          [1674551848.817274][20991:20993] CHIP:TOO:       GroupId: 6
          [1674551848.817278][20991:20993] CHIP:TOO:       Endpoints: 1 entries
          [1674551848.817282][20991:20993] CHIP:TOO:         [1]: 0
          [1674551848.817286][20991:20993] CHIP:TOO:       GroupName: gp6
          [1674551848.817289][20991:20993] CHIP:TOO:       FabricIndex: 1
          [1674551848.817292][20991:20993] CHIP:TOO:      }
          [1674551848.817297][20991:20993] CHIP:TOO:     [2]: {
          [1674551848.817300][20991:20993] CHIP:TOO:       GroupId: 7
          [1674551848.817303][20991:20993] CHIP:TOO:       Endpoints: 1 entries
          [1674551848.817306][20991:20993] CHIP:TOO:         [1]: 0
          [1674551848.817309][20991:20993] CHIP:TOO:       GroupName: gp7
          [1674551848.817312][20991:20993] CHIP:TOO:       FabricIndex: 1
          [1674551848.817314][20991:20993] CHIP:TOO:      }
      disabled: true

    - label:
          "If maxgroups > 2, TH sends AddGroupIfIdentifying command to DUT with
          (maxgroups - 2) groups, incrementing the GroupId each time."
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0008 gp8 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1653552667.307794][2571:2576] CHIP:DMG:                                StatusIB =
          [1653552667.307831][2571:2576] CHIP:DMG:                                {
          [1653552667.307881][2571:2576] CHIP:DMG:                                   status = 0x00 (SUCCESS),
          [1653552667.307922][2571:2576] CHIP:DMG:                                },

          ./chip-tool groups  add-group-if-identifying 0x0009 gp9 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1674551849.597991][21000:21002] CHIP:DMG:                                 StatusIB =
          [1674551849.597995][21000:21002] CHIP:DMG:                                 {
          [1674551849.597998][21000:21002] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1674551849.598001][21000:21002] CHIP:DMG:                                 },

          ./chip-tool groups  add-group-if-identifying 0x000a gp10 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882426.604685][7756:7758] CHIP:DMG:                                 StatusIB =
          [1683882426.604688][7756:7758] CHIP:DMG:                                 {
          [1683882426.604691][7756:7758] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882426.604701][7756:7758] CHIP:DMG:                                 },

          ./chip-tool groups  add-group-if-identifying 0x000b gp11 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882432.529527][7760:7762] CHIP:DMG:                                 StatusIB =
          [1683882432.529532][7760:7762] CHIP:DMG:                                 {
          [1683882432.529535][7760:7762] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882432.529538][7760:7762] CHIP:DMG:                                 },
          [1683882432.529543][7760:7762] CHIP:DMG:

          ./chip-tool groups  add-group-if-identifying 0x000c gp12 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882437.464914][7763:7765] CHIP:DMG:                                 StatusIB =
          [1683882437.464927][7763:7765] CHIP:DMG:                                 {
          [1683882437.464940][7763:7765] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882437.464951][7763:7765] CHIP:DMG:                                 },

          ./chip-tool groups  add-group-if-identifying 0x000d gp13 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882442.334908][7766:7768] CHIP:DMG:                                 StatusIB =
          [1683882442.334911][7766:7768] CHIP:DMG:                                 {
          [1683882442.334915][7766:7768] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882442.334918][7766:7768] CHIP:DMG:                                 },

          ./chip-tool groups  add-group-if-identifying 0x000e gp14 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          1683882448.814358][7769:7771] CHIP:DMG:
          [1683882448.814361][7769:7771] CHIP:DMG:                                 StatusIB =
          [1683882448.814367][7769:7771] CHIP:DMG:                                 {
          [1683882448.814371][7769:7771] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882448.814374][7769:7771] CHIP:DMG:                                 },

          ./chip-tool groups  add-group-if-identifying 0x000e gp15 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882454.216005][7772:7774] CHIP:DMG:
          [1683882454.216016][7772:7774] CHIP:DMG:                                 StatusIB =
          [1683882454.216029][7772:7774] CHIP:DMG:                                 {
          [1683882454.216045][7772:7774] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882454.216057][7772:7774] CHIP:DMG:                                 },

          ./chip-tool groups  add-group-if-identifying 0x000f gp15 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882460.656727][7775:7777] CHIP:DMG:                                 StatusIB =
          [1683882460.656730][7775:7777] CHIP:DMG:                                 {
          [1683882460.656733][7775:7777] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882460.656737][7775:7777] CHIP:DMG:                                 },
          [1683882460.656740][7775:7777] CHIP:DMG:

          ./chip-tool groups  add-group-if-identifying 0x0010 gp16 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882470.921771][7779:7781] CHIP:DMG:                                 StatusIB =
          [1683882470.921775][7779:7781] CHIP:DMG:                                 {
          [1683882470.921779][7779:7781] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882470.921783][7779:7781] CHIP:DMG:                                 },
          [1683882470.921787][7779:7781] CHIP:DMG:

          ./chip-tool groups  add-group-if-identifying 0x0011 gp17 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882478.955105][7783:7785] CHIP:DMG:                                 StatusIB =
          [1683882478.955124][7783:7785] CHIP:DMG:                                 {
          [1683882478.955143][7783:7785] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1683882478.955160][7783:7785] CHIP:DMG:                                 },
      disabled: true

    - label:
          "If maxgroups>0, TH sends AddGroupIfIdentifying command to DUT
          (maxgroups+2) times as unicast method with different GroupID"
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0012 gp18 1 0

          Verify the "status is RESOURCE_EXHAUSTED" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658317372.589336][4296:4301] CHIP:DMG:                                StatusIB =
          [1658317372.589363][4296:4301] CHIP:DMG:                                {
          [1658317372.589399][4296:4301] CHIP:DMG:                                        status = 0x89 (RESOURCE_EXHAUSTED),
          [1658317372.589432][4296:4301] CHIP:DMG:                                },

          ./chip-tool groups  add-group-if-identifying 0x0013 gp19 1 0

          Verify the "status is RESOURCE_EXHAUSTED" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1683882594.518675][7824:7826] CHIP:DMG:                                 StatusIB =
          [1683882594.518680][7824:7826] CHIP:DMG:                                 {
          [1683882594.518685][7824:7826] CHIP:DMG:                                         status = 0x89 (RESOURCE_EXHAUSTED),
          [1683882594.518690][7824:7826] CHIP:DMG:                                 },
          [1683882594.518695][7824:7826] CHIP:DMG:
      disabled: true

    - label:
          "TH reads GroupTable attribute from the GroupKeyManagement cluster
          from DUT"
      PICS: GRPKEY.S.A0001
      verification: |
          ./chip-tool groupkeymanagement read group-table 1 0

          Verify the "grouptable" does not have GroupName  gp5 on the TH(Chip-tool) Log and below is the sample log provided for the raspi platform:

          1683882614.150283][7830:7832] CHIP:DMG: }
          [1683882614.150492][7830:7832] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 223017989
          [1683882614.150539][7830:7832] CHIP:TOO:   GroupTable: 12 entries
          [1683882614.150552][7830:7832] CHIP:TOO:     [1]: {
          [1683882614.150555][7830:7832] CHIP:TOO:       GroupId: 6
          [1683882614.150559][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150565][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150571][7830:7832] CHIP:TOO:       GroupName: gp6
          [1683882614.150575][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150579][7830:7832] CHIP:TOO:      }
          [1683882614.150587][7830:7832] CHIP:TOO:     [2]: {
          [1683882614.150590][7830:7832] CHIP:TOO:       GroupId: 7
          [1683882614.150595][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150600][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150604][7830:7832] CHIP:TOO:       GroupName: gp7
          [1683882614.150607][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150610][7830:7832] CHIP:TOO:      }
          [1683882614.150618][7830:7832] CHIP:TOO:     [3]: {
          [1683882614.150621][7830:7832] CHIP:TOO:       GroupId: 8
          [1683882614.150626][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150630][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150634][7830:7832] CHIP:TOO:       GroupName: gp8
          [1683882614.150638][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150641][7830:7832] CHIP:TOO:      }
          [1683882614.150647][7830:7832] CHIP:TOO:     [4]: {
          [1683882614.150651][7830:7832] CHIP:TOO:       GroupId: 9
          [1683882614.150654][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150658][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150662][7830:7832] CHIP:TOO:       GroupName: gp9
          [1683882614.150665][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150668][7830:7832] CHIP:TOO:      }
          [1683882614.150675][7830:7832] CHIP:TOO:     [5]: {
          [1683882614.150678][7830:7832] CHIP:TOO:       GroupId: 10
          [1683882614.150681][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150684][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150687][7830:7832] CHIP:TOO:       GroupName: gp10
          [1683882614.150691][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150694][7830:7832] CHIP:TOO:      }
          [1683882614.150701][7830:7832] CHIP:TOO:     [6]: {
          [1683882614.150703][7830:7832] CHIP:TOO:       GroupId: 11
          [1683882614.150706][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150710][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150712][7830:7832] CHIP:TOO:       GroupName: gp11
          [1683882614.150715][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150717][7830:7832] CHIP:TOO:      }
          [1683882614.150722][7830:7832] CHIP:TOO:     [7]: {
          [1683882614.150725][7830:7832] CHIP:TOO:       GroupId: 12
          [1683882614.150728][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150731][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150734][7830:7832] CHIP:TOO:       GroupName: gp12
          [1683882614.150736][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150739][7830:7832] CHIP:TOO:      }
          [1683882614.150744][7830:7832] CHIP:TOO:     [8]: {
          [1683882614.150746][7830:7832] CHIP:TOO:       GroupId: 13
          [1683882614.150749][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150752][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150755][7830:7832] CHIP:TOO:       GroupName: gp13
          [1683882614.150759][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150762][7830:7832] CHIP:TOO:      }
          [1683882614.150767][7830:7832] CHIP:TOO:     [9]: {
          [1683882614.150770][7830:7832] CHIP:TOO:       GroupId: 14
          [1683882614.150773][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150776][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150779][7830:7832] CHIP:TOO:       GroupName: gp15
          [1683882614.150781][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150784][7830:7832] CHIP:TOO:      }
          [1683882614.150789][7830:7832] CHIP:TOO:     [10]: {
          [1683882614.150791][7830:7832] CHIP:TOO:       GroupId: 15
          [1683882614.150795][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150798][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150801][7830:7832] CHIP:TOO:       GroupName: gp15
          [1683882614.150803][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150806][7830:7832] CHIP:TOO:      }
          [1683882614.150811][7830:7832] CHIP:TOO:     [11]: {
          [1683882614.150813][7830:7832] CHIP:TOO:       GroupId: 16
          [1683882614.150816][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150820][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150822][7830:7832] CHIP:TOO:       GroupName: gp16
          [1683882614.150825][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150827][7830:7832] CHIP:TOO:      }
          [1683882614.150832][7830:7832] CHIP:TOO:     [12]: {
          [1683882614.150835][7830:7832] CHIP:TOO:       GroupId: 17
          [1683882614.150838][7830:7832] CHIP:TOO:       Endpoints: 1 entries
          [1683882614.150841][7830:7832] CHIP:TOO:         [1]: 0
          [1683882614.150844][7830:7832] CHIP:TOO:       GroupName: gp17
          [1683882614.150847][7830:7832] CHIP:TOO:       FabricIndex: 1
          [1683882614.150850][7830:7832] CHIP:TOO:      }
      disabled: true

    - label: "TH sends RemoveAllGroups command to DUT as unicast method"
      PICS: G.S.C04.Rsp
      verification: |
          ./chip-tool groups remove-all-groups 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1651224377.831704][2989:2994] CHIP:DMG:                                StatusIB =
          [1651224377.831757][2989:2994] CHIP:DMG:                                {
          [1651224377.831812][2989:2994] CHIP:DMG:                                      status = 0x00 (SUCCESS),
          [1651224377.831866][2989:2994] CHIP:DMG:                                },
          [1651224377.832439][2989:2994] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_0004 Command=0x0000_0004 Status=0x0
      disabled: true

    - label:
          "TH sends AddGroupIfIdentifying command to DUT as unicast method with
          the following fields: GroupID as 0x0000 GroupName as Gp45"
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0000 gp45 1 0

          Verify the "status is CONSTRAINT_ERROR" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658307266.719438][3251:3256] CHIP:DMG:                                StatusIB =
          [1658307266.719482][3251:3256] CHIP:DMG:                                {
          [1658307266.719527][3251:3256] CHIP:DMG:                                        status = 0x87 (CONSTRAINT_ERROR),
          [1658307266.719573][3251:3256] CHIP:DMG:                                },
      disabled: true

    - label:
          "TH sends AddGroupIfIdentifying command to DUT as unicast method with
          the following fields: GroupId as 0x0046 GroupName as Gp46"
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0046 gp46 1 0

          Verify the "status is UNSUPPORTED_ACCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658307298.568727][3257:3262] CHIP:DMG:                                StatusIB =
          [1658307298.568761][3257:3262] CHIP:DMG:                                {
          [1658307298.568807][3257:3262] CHIP:DMG:                                        status = 0x7e (UNSUPPORTED_ACCESS),
          [1658307298.568840][3257:3262] CHIP:DMG:                                },
      disabled: true

    - label:
          "TH sends Identify command to DUT with the IdentifyTime as 0x0000
          (stop identifying)"
      PICS: I.S.C00.Rsp
      verification: |
          ./chip-tool identify identify 0x0000 1 0

          Verify the "status is SUCCESS" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658307387.097433][3268:3273] CHIP:DMG:                                StatusIB =
          [1658307387.097464][3268:3273] CHIP:DMG:                                {
          [1658307387.097502][3268:3273] CHIP:DMG:                                        status = 0x00 (SUCCESS),
          [1658307387.097533][3268:3273] CHIP:DMG:                                },
      disabled: true

    - label: "TH reads immediately IdentifyTime attribute from DUT"
      PICS: I.S.A0000
      verification: |
          ./chip-tool identify read identify-time 1 0

          Verify the "identify time"  attribute value is 0x0000 on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658307393.820520][3274:3279] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0003 Attribute 0x0000_0000 DataVersion: 3871913767
          [1658307393.820575][3274:3279] CHIP:TOO:   identify time: 0
      disabled: true

    - label:
          "TH sends AddGroupIfIdentifying command to DUT as unicast method with
          the following fields: GroupId as 0x0004 GroupName as Gp4"
      PICS: G.S.C05.Rsp
      verification: |
          ./chip-tool groups  add-group-if-identifying 0x0004 gp4 1 0

          Verify the "status is SUCCESS" , GroupId is 0x0004 on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1651224746.146005][3038:3043] CHIP:DMG:                                StatusIB =
          [1651224746.146038][3038:3043] CHIP:DMG:                                {
          [1651224746.146073][3038:3043] CHIP:DMG:                                      status = 0x00 (SUCCESS),
          [1651224746.146106][3038:3043] CHIP:DMG:                                },
      disabled: true

    - label: "TH reads GroupTable attribute from the GroupKeyManagement cluster"
      PICS: GRPKEY.S.A0001
      verification: |
          ./chip-tool groupkeymanagement read group-table 1 0

          Verify the "grouptable entries is 0" on the TH(Chip-tool)  Log and below is the sample log provided for the raspi platform:

          [1658317914.656772][4650:4655] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003F Attribute 0x0000_0001 DataVersion: 3844079664
          [1658317914.656843][4650:4655] CHIP:TOO:   GroupTable: 0 entries
      disabled: true
