# 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: 123.2.3. [TC-S-2.3] Secondary functionality with server as DUT

PICS:
    - S.S

config:
    nodeId: 0x12344321
    cluster: "Scenes"
    endpoint: 1
    G1:
        type: int16u
        defaultValue: 0x0001

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

    - label: "TH reads from the DUT the (0x0006) SceneTableSize attribute"
      PICS: S.S.A0006
      command: "readAttribute"
      attribute: "SceneTableSize"
      response:
          values:
              - name: "SceneTableSize"
                saveAs: maxScenes
          constraints:
              type: uint16

    - label:
          "preparation step for using commands from Groups cluster: Add KeySet"
      cluster: "Group Key Management"
      endpoint: 0
      command: "KeySetWrite"
      arguments:
          values:
              - name: "GroupKeySet"
                value:
                    {
                        GroupKeySetID: 0x01a1,
                        GroupKeySecurityPolicy: 0,
                        EpochKey0: "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf",
                        EpochStartTime0: 0,
                        EpochKey1: "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf",
                        EpochStartTime1: 0,
                        EpochKey2: "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf",
                        EpochStartTime2: 0,
                    }

    - label:
          "Preparation step for using commands from Groups cluster: Write Group
          Keys"
      cluster: "Group Key Management"
      endpoint: 0
      command: "writeAttribute"
      attribute: "GroupKeyMap"
      arguments:
          value: [{ FabricIndex: 1, GroupId: G1, GroupKeySetID: 0x01a1 }]

    - label:
          "TH sends a AddGroup command to DUT with the GroupID field set to G1."
      PICS: G.S.C00.Rsp
      cluster: "Groups"
      command: "AddGroup"
      arguments:
          values:
              - name: "GroupID"
                value: G1
              - name: "GroupName"
                value: "Group1"
      response:
          values:
              - name: "Status"
                value: 0
              - name: "GroupID"
                value: G1

    - label:
          "TH sends a RemoveAllScenes command to DUT with the GroupID field set
          to G1."
      PICS: S.S.C03.Rsp
      command: "RemoveAllScenes"
      arguments:
          values:
              - name: "GroupID"
                value: G1
      response:
          values:
              - name: "Status"
                value: 0
              - name: "GroupID"
                value: G1

    - label:
          "TH sends a GetSceneMembership command to DUT with the GroupID field
          set to G1."
      PICS: S.S.C06.Rsp
      command: "GetSceneMembership"
      arguments:
          values:
              - name: "GroupID"
                value: G1
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "Capacity"
                value: (maxScenes/2)
              - name: "GroupID"
                value: G1
              - name: "SceneList"
                value: []

    - label:
          "TH sends a EnhancedAddScene command to DUT with the GroupID field set
          to G1, the SceneID field set to 0x01, the TransitionTime field set to
          0x000a (1s) and a set of extension fields appropriate to AC1."
      PICS: S.S.C40.Rsp && PICS_SDK_CI_ONLY
      command: "EnhancedAddScene"
      arguments:
          values:
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x0001
              - name: "TransitionTime"
                value: 0x000a
              - name: "SceneName"
                value: "Scene1"
              - name: "ExtensionFieldSets"
                value:
                    [
                        {
                            ClusterID: 0x0006,
                            AttributeValueList:
                                [{ AttributeID: 0x0000, AttributeValue: 0x01 }],
                        },
                        {
                            ClusterID: 0x0008,
                            AttributeValueList:
                                [
                                    {
                                        AttributeID: 0x0000,
                                        AttributeValue: 0x64,
                                    },
                                    {
                                        AttributeID: 0x0001,
                                        AttributeValue: 0x00,
                                    },
                                ],
                        },
                    ]
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01

    - label:
          "TH sends a AddScene command to DUT with the GroupID field set to G1,
          the SceneID field set to 0x01, the TransitionTime field set to 0x0001
          (1s) and a set of extension fields appropriate to AC1."
      PICS: (!S.S.C40.Rsp) && PICS_SDK_CI_ONLY
      command: "AddScene"
      arguments:
          values:
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x0001
              - name: "TransitionTime"
                value: 0x0001
              - name: "SceneName"
                value: "Scene1"
              - name: "ExtensionFieldSets"
                value:
                    [
                        {
                            ClusterID: 0x0006,
                            AttributeValueList:
                                [{ AttributeID: 0x0000, AttributeValue: 0x01 }],
                        },
                        {
                            ClusterID: 0x0008,
                            AttributeValueList:
                                [
                                    {
                                        AttributeID: 0x0000,
                                        AttributeValue: 0x64,
                                    },
                                    {
                                        AttributeID: 0x0001,
                                        AttributeValue: 0x00,
                                    },
                                ],
                        },
                    ]
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01

    - label:
          "TH sends a EnhancedAddScene command to DUT with the GroupID field set
          to G1, the SceneID field set to 0x01, the TransitionTime field set to
          0x000a and a set of extension fields appropriate to AC1."
      verification: |
          Execute the following command in TH to generate the pre-condition to execute this test case:

          ./chip-tool scenes enhanced-add-scene 0x000a 1 1 "Test Name" '[{"clusterId": value, "attributeValueList":[{"attributeId": value, "attributeValue": value}]}' nodeId endpointId

          Note: The number of ExtensionFieldSets, the value of clusterId of each ExtensionFieldSet, the number of attributes in attributeValueList and their values varies for each application

          Verify the "status is success" on the TH(Chip-tool)  Log  and below is the sample log provided for the raspi platform:
          [1670970505.887060][5742:5744] CHIP:DMG: InvokeResponseMessage =
          [1670970505.887118][5742:5744] CHIP:DMG: {
          [1670970505.887172][5742:5744] CHIP:DMG: 	suppressResponse = false,
          [1670970505.887231][5742:5744] CHIP:DMG: 	InvokeResponseIBs =
          [1670970505.887307][5742:5744] CHIP:DMG: 	[
          [1670970505.887366][5742:5744] CHIP:DMG: 		InvokeResponseIB =
          [1670970505.887444][5742:5744] CHIP:DMG: 		{
          [1670970505.887507][5742:5744] CHIP:DMG: 			CommandDataIB =
          [1670970505.887576][5742:5744] CHIP:DMG: 			{
          [1670970505.887713][5742:5744] CHIP:DMG: 				CommandPathIB =
          [1670970505.887804][5742:5744] CHIP:DMG: 				{
          [1670970505.887940][5742:5744] CHIP:DMG: 					EndpointId = 0x1,
          [1670970505.888093][5742:5744] CHIP:DMG: 					ClusterId = 0x5,
          [1670970505.888242][5742:5744] CHIP:DMG: 					CommandId = 0x40,
          [1670970505.888385][5742:5744] CHIP:DMG: 				},
          [1670970505.888692][5742:5744] CHIP:DMG:
          [1670970505.888769][5742:5744] CHIP:DMG: 				CommandFields =
          [1670970505.888852][5742:5744] CHIP:DMG: 				{
          [1670970505.889030][5742:5744] CHIP:DMG: 					0x0 = 0,
          [1670970505.889183][5742:5744] CHIP:DMG: 					0x1 = 1,
          [1670970505.889406][5742:5744] CHIP:DMG: 					0x2 = 1,
          [1670970505.889515][5742:5744] CHIP:DMG: 				},
          [1670970505.889603][5742:5744] CHIP:DMG: 			},
          [1670970505.889684][5742:5744] CHIP:DMG:
          [1670970505.889745][5742:5744] CHIP:DMG: 		},
          [1670970505.889821][5742:5744] CHIP:DMG:
          [1670970505.889878][5742:5744] CHIP:DMG: 	],
          [1670970505.889953][5742:5744] CHIP:DMG:
          [1670970505.890009][5742:5744] CHIP:DMG: 	InteractionModelRevision = 1
          [1670970505.890066][5742:5744] CHIP:DMG: },
          [1670970505.890212][5742:5744] CHIP:DMG: Received Command Response Data, Endpoint=1 Cluster=0x0000_0005 Command=0x0000_0040
          [1670970505.890328][5742:5744] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0005 Command 0x0000_0040
          [1670970505.890458][5742:5744] CHIP:TOO:   EnhancedAddSceneResponse: {
          [1670970505.890551][5742:5744] CHIP:TOO:     status: 0
          [1670970505.890608][5742:5744] CHIP:TOO:     groupId: 1
          [1670970505.890717][5742:5744] CHIP:TOO:     sceneId: 1
          [1670970505.890774][5742:5744] CHIP:TOO:    }
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: S.S.C40.Rsp && PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value:
                    "Please execute the enhanced add scene command with
                    extensionfieldsets in accordance with AC1 on DUT and enter
                    'y' if the command is successful"
              - name: "expectedValue"
                value: "y"

    - label:
          "TH sends a AddScene command to DUT with the GroupID field set to G1,
          the SceneID field set to 0x01, the TransitionTime field set to 0x0001
          and a set of extension fields appropriate to AC1."
      verification: |
          Execute the following command in TH to generate the pre-condition to execute this test case:

          ./chip-tool scenes add-scene 0x0001 1 1 "Test Name" '[{"clusterId": value, "attributeValueList":[{"attributeId": value, "attributeValue": value}]}' nodeId endpointId

          Note: The number of ExtensionFieldSets, the value of clusterId of each ExtensionFieldSet, the number of attributes in attributeValueList and their values varies for each application

          Verify the "status is success" on the TH(Chip-tool)  Log  and below is the sample log provided for the raspi platform:
          [1670970505.887060][5742:5744] CHIP:DMG: InvokeResponseMessage =
          [1670970505.887118][5742:5744] CHIP:DMG: {
          [1670970505.887172][5742:5744] CHIP:DMG: 	suppressResponse = false,
          [1670970505.887231][5742:5744] CHIP:DMG: 	InvokeResponseIBs =
          [1670970505.887307][5742:5744] CHIP:DMG: 	[
          [1670970505.887366][5742:5744] CHIP:DMG: 		InvokeResponseIB =
          [1670970505.887444][5742:5744] CHIP:DMG: 		{
          [1670970505.887507][5742:5744] CHIP:DMG: 			CommandDataIB =
          [1670970505.887576][5742:5744] CHIP:DMG: 			{
          [1670970505.887713][5742:5744] CHIP:DMG: 				CommandPathIB =
          [1670970505.887804][5742:5744] CHIP:DMG: 				{
          [1670970505.887940][5742:5744] CHIP:DMG: 					EndpointId = 0x1,
          [1670970505.888093][5742:5744] CHIP:DMG: 					ClusterId = 0x5,
          [1670970505.888242][5742:5744] CHIP:DMG: 					CommandId = 0x0,
          [1670970505.888385][5742:5744] CHIP:DMG: 				},
          [1670970505.888692][5742:5744] CHIP:DMG:
          [1670970505.888769][5742:5744] CHIP:DMG: 				CommandFields =
          [1670970505.888852][5742:5744] CHIP:DMG: 				{
          [1670970505.889030][5742:5744] CHIP:DMG: 					0x0 = 0,
          [1670970505.889183][5742:5744] CHIP:DMG: 					0x1 = 1,
          [1670970505.889406][5742:5744] CHIP:DMG: 					0x2 = 1,
          [1670970505.889515][5742:5744] CHIP:DMG: 				},
          [1670970505.889603][5742:5744] CHIP:DMG: 			},
          [1670970505.889684][5742:5744] CHIP:DMG:
          [1670970505.889745][5742:5744] CHIP:DMG: 		},
          [1670970505.889821][5742:5744] CHIP:DMG:
          [1670970505.889878][5742:5744] CHIP:DMG: 	],
          [1670970505.889953][5742:5744] CHIP:DMG:
          [1670970505.890009][5742:5744] CHIP:DMG: 	InteractionModelRevision = 1
          [1670970505.890066][5742:5744] CHIP:DMG: },
          [1670970505.890212][5742:5744] CHIP:DMG: Received Command Response Data, Endpoint=1 Cluster=0x0000_0005 Command=0x0000_0000
          [1670970505.890328][5742:5744] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0005 Command 0x0000_0000
          [1670970505.890458][5742:5744] CHIP:TOO:   AddSceneResponse: {
          [1670970505.890551][5742:5744] CHIP:TOO:     status: 0
          [1670970505.890608][5742:5744] CHIP:TOO:     groupId: 1
          [1670970505.890717][5742:5744] CHIP:TOO:     sceneId: 1
          [1670970505.890774][5742:5744] CHIP:TOO:    }
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: (!S.S.C40.Rsp) && PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value:
                    "Please execute the add scene command with
                    extensionfieldsets in accordance with AC1 on DUT and enter
                    'y' if the command is successful"
              - name: "expectedValue"
                value: "y"

    - label:
          "TH sends a EnhancedViewScene command to DUT with the GroupID field
          set to G1 and the SceneID field set to 0x01."
      PICS: S.S.C41.Rsp && PICS_SDK_CI_ONLY
      command: "EnhancedViewScene"
      arguments:
          values:
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01
              - name: "TransitionTime"
                value: 0x000a
              - name: "ExtensionFieldSets"
                value:
                    [
                        {
                            ClusterID: 0x0006,
                            AttributeValueList:
                                [{ AttributeID: 0x0000, AttributeValue: 0x01 }],
                        },
                        {
                            ClusterID: 0x0008,
                            AttributeValueList:
                                [
                                    {
                                        AttributeID: 0x0000,
                                        AttributeValue: 0x64,
                                    },
                                    {
                                        AttributeID: 0x0001,
                                        AttributeValue: 0x00,
                                    },
                                ],
                        },
                    ]

    - label:
          "TH sends a ViewScene command to DUT with the GroupID field set to G1
          and the SceneID field set to 0x01."
      PICS: (!S.S.C41.Rsp) && PICS_SDK_CI_ONLY
      command: "ViewScene"
      arguments:
          values:
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01
              - name: "TransitionTime"
                value: 0x0001
              - name: "ExtensionFieldSets"
                value:
                    [
                        {
                            ClusterID: 0x0006,
                            AttributeValueList:
                                [{ AttributeID: 0x0000, AttributeValue: 0x01 }],
                        },
                        {
                            ClusterID: 0x0008,
                            AttributeValueList:
                                [
                                    {
                                        AttributeID: 0x0000,
                                        AttributeValue: 0x64,
                                    },
                                    {
                                        AttributeID: 0x0001,
                                        AttributeValue: 0x00,
                                    },
                                ],
                        },
                    ]

    - label:
          "TH sends a EnhancedViewScene command to DUT with the GroupID field
          set to G1 and the SceneID field set to 0x01."
      PICS: S.S.C41.Rsp && PICS_SKIP_SAMPLE_APP
      verification: |
          Execute the following command in TH to generate the pre-condition to execute this test case:

          ./chip-tool scenes enhanced-view-scene GroupId SceneId Node-Id EndpointId

          Note: The number of ExtensionFieldSets, the value of clusterId of each ExtensionFieldSet, the number of attributes in attributeValueList and their values varies for each application

          Verify that the extension fields in the log match the ones expected and that
          Status = 0x00
          GroupID = 0x0001
          SceneID = 0x01
          TransitionTime = 0x000a
      cluster: "LogCommands"
      command: "UserPrompt"
      arguments:
          values:
              - name: "message"
                value:
                    "Please execute the ehanced-view-scene command and verify
                    that the extensionfieldsets, status, groupID and SceneID are
                    in accordance with AC1 on DUT and enter 'y' if the command
                    is successful"
              - name: "expectedValue"
                value: "y"
    - label:
          "TH sends a ViewScene command to DUT with the GroupID field set to G1
          and the SceneID field set to 0x01."
      PICS: (!S.S.C41.Rsp) && PICS_SKIP_SAMPLE_APP
      verification: |
          Execute the following command in TH to generate the pre-condition to execute this test case:

          ./chip-tool scenes view-scene GroupId SceneId Node-Id EndpointId

          Note: The number of ExtensionFieldSets, the value of clusterId of each ExtensionFieldSet, the number of attributes in attributeValueList and their values varies for each application

          Verify that the extension fields in the log match the ones expected and that
          Status = 0x00
          GroupID = 0x0001
          SceneID = 0x01
          TransitionTime = 0x0001
      cluster: "LogCommands"
      command: "UserPrompt"
      arguments:
          values:
              - name: "message"
                value:
                    "Please execute the view-scene command and verify that the
                    extensionfieldsets, status, groupID and SceneID are in
                    accordance with AC1 on DUT and enter 'y' if the command is
                    successful"
              - name: "expectedValue"
                value: "y"

    - label:
          "TH sends a GetSceneMembership command to DUT with the GroupID field
          set to G1."
      PICS: S.S.C06.Rsp
      command: "GetSceneMembership"
      arguments:
          values:
              - name: "GroupID"
                value: G1
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "Capacity"
                value: (maxScenes/2) - 1
              - name: "GroupID"
                value: G1
              - name: "SceneList"
                value: [0x01]

    - label:
          "TH configures AC2 on DUT for all implemented application clusters
          supporting scenes."
      cluster: "Level Control"
      PICS: PICS_SDK_CI_ONLY
      command: "MoveToLevelWithOnOff"
      arguments:
          values:
              - name: "Level"
                value: 200
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label:
          "TH configures AC2 on DUT for all implemented application clusters
          supporting scenes."
      verification: |
          Is DUT configured with AC2?
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value:
                    "Please configure AC2 on DUT and enter 'y' after the
                    configuration is complete"
              - name: "expectedValue"
                value: "y"

    - label:
          "TH sends a RecallScene command to group G1 with the GroupID field set
          to G1 and the scene ID field set to 0x01."
      PICS: S.S.C05.Rsp
      command: "RecallScene"
      groupId: 0x0001
      arguments:
          values:
              - name: "GroupID"
                value: G1
              - name: "SceneID"
                value: 0x01

    - label: "Wait 1s"
      PICS: PICS_SDK_CI_ONLY
      cluster: "DelayCommands"
      command: "WaitForMs"
      arguments:
          values:
              - name: "ms"
                value: 1000

    - label:
          "TH confirm the DUT reached AC1 (on level control cluster) after 1s"
      PICS: PICS_SDK_CI_ONLY
      cluster: "Level Control"
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 100

    - label: "Verify DUT returns to AC1."
      verification: |
          Is DUT configured with AC1?
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_SKIP_SAMPLE_APP
      arguments:
          values:
              - name: "message"
                value: "Please confirm AC1 on DUT and enter 'y'."
              - name: "expectedValue"
                value: "y"

    - label:
          "TH sends a CopyScene command to DUT with the mode field set to 0x00,
          the group identifier from field set to G1, the scene identifier from
          field set to 0x01, the group identifier to field set to G1 and the
          scene identifier to field set to 0x02."
      PICS: S.S.C42.Rsp
      verification: |
          DUT sends a CopySceneResponse command to TH with the Status field set to 0x00 (SUCCESS), the group identifier from field set to G1 and the scene identifier from field set to 0x01.
      command: "CopyScene"
      arguments:
          values:
              - name: "Mode"
                value: 0x00
              - name: "GroupIdentifierFrom"
                value: G1
              - name: "SceneIdentifierFrom"
                value: 0x01
              - name: "GroupIdentifierTo"
                value: G1
              - name: "SceneIdentifierTo"
                value: 0x02
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "GroupIdentifierFrom"
                value: G1
              - name: "SceneIdentifierFrom"
                value: 0x01

    - label:
          "TH sends a GetSceneMembership command to DUT with the GroupID field
          set to G1."
      PICS: S.S.C06.Rsp
      command: "GetSceneMembership"
      arguments:
          values:
              - name: "GroupID"
                value: G1
      response:
          values:
              - name: "Status"
                value: 0x00
              - name: "Capacity"
                value: (maxScenes/2) - 2
              - name: "GroupID"
                value: G1
              - name: "SceneList"
                value: [0x01, 0x02]
