# 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:
    11.1.2. [TC-OPCREDS-1.2] Global Attributes for Node Operational Credentials
    Cluster [DUT-Server]

PICS:
    - OPCREDS.S

config:
    nodeId: 0x12344321
    cluster: "Operational Credentials"
    endpoint: 0

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

    - label: "TH reads the ClusterRevision from DUT"
      PICS: OPCREDS.S.Afffd
      command: "readAttribute"
      attribute: "ClusterRevision"
      response:
          value: 1
          constraints:
              type: int16u

    - label: "TH reads the FeatureMap from DUT"
      PICS: OPCREDS.S.Afffc
      command: "readAttribute"
      attribute: "FeatureMap"
      response:
          value: 0
          constraints:
              type: bitmap32

    - label: "TH reads AttributeList from DUT"
      PICS: OPCREDS.S.Afffb
      command: "readAttribute"
      attribute: "AttributeList"
      response:
          constraints:
              type: list
              contains:
                  [
                      0xFFFD,
                      0xFFFC,
                      0xFFFB,
                      0xFFFA,
                      0xFFF9,
                      0xFFF8,
                      0x00,
                      0x01,
                      0x02,
                      0x03,
                      0x04,
                      0x05,
                  ]

    #List values range check support https://github.com/project-chip/connectedhomeip/issues/26570
    - label:
          "TH reads AttributeList attribute from DUT. 1.The list SHALL NOT
          contain any additional values in the standard or scoped range:
          (0x0000_0000 - 0x0000_4FFF) and (0x0000_F000 - 0x0000_FFFE) 2.The list
          MAY contain values in the Manufacturer Extensible Identifier (MEI)
          range: (0xXXXX_0000 - 0xXXXX_4FFF), where XXXX is the allowed MEI
          range (0x0001 - 0xFFF1), these values SHALL be ignored. 3.The list
          SHALL NOT contain any values in the Test Vendor or invalid range:
          (0x0000_5000 - 0x0000_EFFF and 0x0000_FFFF), (0xXXXX_5000 -
          0xXXXX_FFFF) and (0xFFF1_0000 - 0xFFFF_FFFF), where XXXX is the
          allowed MEI range (0x0001 - 0xFFF1)"
      verification: |
          ./chip-tool operationalcredentials read attribute-list 1 0

          Verify " AttributeList " on the TH(Chip-tool) Log:
          Below is the example value which is observed in the RPI platform the value may be differ based on the dut implementation.



          [1656324429.812701][17795:17800] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_FFFB DataVersion: 3039700471
          [1656324429.812917][17795:17800] CHIP:TOO:   AttributeList: 11 entries
          [1656324429.813076][17795:17800] CHIP:TOO:     [1]: 0
          [1656324429.813143][17795:17800] CHIP:TOO:     [2]: 1
          [1656324429.813205][17795:17800] CHIP:TOO:     [3]: 2
          [1656324429.813266][17795:17800] CHIP:TOO:     [4]: 3
          [1656324429.813327][17795:17800] CHIP:TOO:     [5]: 4
          [1656324429.813387][17795:17800] CHIP:TOO:     [6]: 5
          [1656324429.813450][17795:17800] CHIP:TOO:     [7]: 65528
          [1656324429.813513][17795:17800] CHIP:TOO:     [8]: 65529
          [1656324429.813575][17795:17800] CHIP:TOO:     [9]: 65531
          [1656324429.813636][17795:17800] CHIP:TOO:     [10]: 65532
          [1656324429.813697][17795:17800] CHIP:TOO:     [11]: 65533
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_USER_PROMPT && OPCREDS.S.Afffb
      arguments:
          values:
              - name: "message"
                value: "Please enter 'y' for success"
              - name: "expectedValue"
                value: "y"

    - label:
          "TH reads EventList attribute from DUT. 1.The list MAY contain values
          in the Manufacturer Extensible Identifier (MEI) range: (0xXXXX_0000 -
          0xXXXX_00FF), where XXXX is the allowed MEI range (0x0001 - 0xFFF1),
          these values SHALL be ignored. 2.The list SHALL NOT contain any values
          in the Test Vendor or invalid range: (0x0000_0100 - 0x0000_FFFF),
          (0xXXXX_0100 - 0xXXXX_FFFF) and (0xFFF1_0000 - 0xFFFF_FFFF), where
          XXXX is the allowed MEI range (0x0001 - 0xFFF1)"
      verification: |
          ./chip-tool operationalcredentials read event-list 1 0

          Verify " EventList " on the TH(Chip-tool) Log:
          Below is the example value which is observed in the RPI platform the value may be differ based on the dut implementation.

          [1677044259.559572][29732:29734] CHIP:DMG: }
          [1677044259.559655][29732:29734] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_FFFA DataVersion: 806612356
          [1677044259.560285][29732:29734] CHIP:TOO:   EventList: 0 entries
          [1677044259.560354][29732:29734] CHIP:EM: <<< [E:35511i S:22620 M:102340651 (Ack:219865295)] (S) Msg TX to 1:0000000000000001 [682F] --- Type 0000:10 (SecureChannel:StandaloneAck)
          [1677044259.560369][29732:29734] CHIP:IN: (S) Sending msg 102340651 on secure session with LSID: 22620
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_USER_PROMPT && OPCREDS.S.Afffa
      arguments:
          values:
              - name: "message"
                value: "Please enter 'y' for success"
              - name: "expectedValue"
                value: "y"

    - label: "TH reads AcceptedCommandList from DUT"
      PICS: OPCREDS.S.Afff9
      command: "readAttribute"
      attribute: "AcceptedCommandList"
      response:
          constraints:
              type: list
              contains: [0x00, 0x02, 0x04, 0x06, 0x07, 0x09, 0x0a, 0x0b]

    - label:
          "TH reads AcceptedCommandList attribute from DUT. 1.The list SHALL NOT
          contain any additional values in the standard or scoped range:
          (0x0000_0000 - 0x0000_00FF). 2.The list MAY contain values in the
          Manufacturer Extensible Identifier (MEI) range: (0xXXXX_0000 -
          0xXXXX_00FF), where XXXX is the allowed MEI range (0x0001 - 0xFFF1),
          these values SHALL be ignored.3.The list SHALL NOT contain any values
          in the Test Vendor or invalid range: (0x0000_0100 - 0x0000_FFFF),
          (0xXXXX_0100 - 0xXXXX_FFFF) and (0xFFF1_0000 - 0xFFFF_FFFF), where
          XXXX is the allowed MEI range (0x0001 - 0xFFF1)"
      verification: |
          ./chip-tool operationalcredentials read  accepted-command-list 1 0

          Verify " AcceptedCommandList " on the TH(Chip-tool) Log:
          Below is the example value which is observed in the RPI platform the value may be differ based on the dut implementation.


          [1657021609.426857][7131:7136] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_FFF9 DataVersion: 364716653
          [1657021609.426944][7131:7136] CHIP:TOO:   AcceptedCommandList: 8 entries
          [1657021609.426978][7131:7136] CHIP:TOO:     [1]: 0
          [1657021609.427005][7131:7136] CHIP:TOO:     [2]: 2
          [1657021609.427032][7131:7136] CHIP:TOO:     [3]: 4
          [1657021609.427059][7131:7136] CHIP:TOO:     [4]: 6
          [1657021609.427085][7131:7136] CHIP:TOO:     [5]: 7
          [1657021609.427111][7131:7136] CHIP:TOO:     [6]: 9
          [1657021609.427138][7131:7136] CHIP:TOO:     [7]: 10
          [1657021609.427165][7131:7136] CHIP:TOO:     [8]: 11
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_USER_PROMPT && OPCREDS.S.Afff9
      arguments:
          values:
              - name: "message"
                value: "Please enter 'y' for success"
              - name: "expectedValue"
                value: "y"

    - label: "TH reads GeneratedCommandList from DUT"
      PICS: OPCREDS.S.Afff8
      command: "readAttribute"
      attribute: "GeneratedCommandList"
      response:
          constraints:
              type: list
              contains: [0x01, 0x03, 0x05, 0x08]

    - label:
          "TH reads GeneratedCommandList attribute from DUT. 1.The list MAY
          contain values in the Manufacturer Extensible Identifier (MEI) range:
          (0xXXXX_0000 - 0xXXXX_00FF), where XXXX is the allowed MEI range
          (0x0001 - 0xFFF1), these values SHALL be ignored. 2.The list SHALL NOT
          contain any values in the Test Vendor or invalid range: (0x0000_0100 -
          0x0000_FFFF), (0xXXXX_0100 - 0xXXXX_FFFF) and (0xFFF1_0000 -
          0xFFFF_FFFF), where XXXX is the allowed MEI range (0x0001 - 0xFFF1)"
      verification: |
          ./chip-tool operationalcredentials read generated-command-list 1 0

          Verify " GeneratedCommandList " on the TH(Chip-tool) Log:
          Below is the example value which is observed in the RPI platform the value may be differ based on the dut implementation.


          [1651215270.028855][3260:3265] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Attribute 0x0000_FFF8 DataVersion: 3662641304
          [1651215270.028955][3260:3265] CHIP:TOO:   GeneratedCommandList: 4 entries
          [1651215270.029001][3260:3265] CHIP:TOO:     [1]: 1
          [1651215270.029039][3260:3265] CHIP:TOO:     [2]: 3
          [1651215270.029076][3260:3265] CHIP:TOO:     [3]: 5
          [1651215270.029112][3260:3265] CHIP:TOO:     [4]: 8
      cluster: "LogCommands"
      command: "UserPrompt"
      PICS: PICS_USER_PROMPT && OPCREDS.S.Afff8
      arguments:
          values:
              - name: "message"
                value: "Please enter 'y' for success"
              - name: "expectedValue"
                value: "y"
