# 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.

# TODO : WindowCovering Test WNCV_2_1 add/complete some Conditional test using the FeatureMap (dynamics Mandatory and Optional attributes)

name: Window Covering [TC-WNCV-2.1] Attributes with server as DUT

PICS:
    - WNCV.S

config:
    nodeId: 0x12344321
    cluster: "Window Covering"
    endpoint: 1

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

    ### MANDATORY Attributes
    ### 1 MANDATORY Attributes
    ### Attribute[  0]: Type  =======================================
    - label: "1a: read the RO mandatory attribute default: Type"
      command: "readAttribute"
      attribute: "Type"
      PICS: WNCV.S.A0000
      response:
          constraints:
              type: enum8
              minValue: 0
              maxValue: 9

    ### Attribute[  7]: ConfigStatus  ===============================
    - label: "1b: read the RO mandatory attribute default: ConfigStatus"
      command: "readAttribute"
      attribute: "ConfigStatus"
      PICS: WNCV.S.A0007
      response:
          constraints:
              type: bitmap8
              minValue: 0
              maxValue: 63

    ### Attribute[ 10]: OperationalStatus  ==========================
    - label: "1c: read the RO mandatory attribute default: OperationalStatus"
      command: "readAttribute"
      attribute: "OperationalStatus"
      PICS: WNCV.S.A000a
      response:
          constraints:
              type: bitmap8
              minValue: 0
              maxValue: 63

    ### Attribute[ 13]: EndProductType ==============================
    - label: "1d: read the RO mandatory attribute default: EndProductType"
      command: "readAttribute"
      attribute: "EndProductType"
      PICS: WNCV.S.A000d
      response:
          constraints:
              type: enum8
              minValue: 0
              maxValue: 23

    ### Attribute[ 23]: Mode ========================================
    - label: "1e: read the RW mandatory attribute default: Mode"
      command: "readAttribute"
      attribute: "Mode"
      PICS: WNCV.S.A0017
      response:
          constraints:
              type: bitmap8
              minValue: 0
              maxValue: 15

    - label: "1f: write a value into the RW mandatory attribute:: Mode"
      command: "writeAttribute"
      attribute: "Mode"
      PICS: WNCV.S.A0017
      arguments:
          value: 0

    ### 2 CONDITIONALLY MANDATORY Attributes
    ### Attribute[ 11]: TargetPositionLiftPercent100ths  ====================
    - label:
          "2a: read the RO optional attribute default:
          TargetPositionLiftPercent100ths"
      command: "readAttribute"
      attribute: "TargetPositionLiftPercent100ths"
      PICS: WNCV.S.A000b
      response:
          constraints:
              type: Percent100ths
              minValue: 0
              maxValue: 10000

    ### Attribute[ 12]: TargetPositionTiltPercent100ths  ====================
    - label:
          "2b: read the RO optional attribute default:
          TargetPositionTiltPercent100ths"
      command: "readAttribute"
      attribute: "TargetPositionTiltPercent100ths"
      PICS: WNCV.S.A000c
      response:
          constraints:
              type: Percent100ths
              minValue: 0
              maxValue: 10000

    ### Attribute[ 14]: CurrentPositionLiftPercent100ths  ====================
    - label:
          "2c: read the RO optional attribute default:
          CurrentPositionLiftPercent100ths"
      command: "readAttribute"
      attribute: "CurrentPositionLiftPercent100ths"
      PICS: WNCV.S.A000e
      response:
          constraints:
              type: Percent100ths
              minValue: 0
              maxValue: 10000

    ### Attribute[ 15]: CurrentPositionTiltPercent100ths  ====================
    - label:
          "2d: read the RO optional attribute default:
          CurrentPositionTiltPercent100ths"
      command: "readAttribute"
      attribute: "CurrentPositionTiltPercent100ths"
      PICS: WNCV.S.A000f
      response:
          constraints:
              type: Percent100ths
              minValue: 0
              maxValue: 10000

    ### Attribute[ 16]: InstalledOpenLimitLift  ====================
    - label:
          "2e: read the RO optional attribute default: InstalledOpenLimitLift"
      command: "readAttribute"
      attribute: "InstalledOpenLimitLift"
      PICS: WNCV.S.A0010
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[ 17]: InstalledClosedLimitLift  ====================
    - label:
          "2f: read the RO optional attribute default: InstalledClosedLimitLift"
      command: "readAttribute"
      attribute: "InstalledClosedLimitLift"
      PICS: WNCV.S.A0011
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[ 18]: InstalledOpenLimitTilt  ====================
    - label:
          "2g: read the RO optional attribute default: InstalledOpenLimitTilt"
      command: "readAttribute"
      attribute: "InstalledOpenLimitTilt"
      PICS: WNCV.S.A0012
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[ 19]: InstalledClosedLimitTilt  ====================
    - label:
          "2h: read the RO optional attribute default: InstalledClosedLimitTilt"
      command: "readAttribute"
      attribute: "InstalledClosedLimitTilt"
      PICS: WNCV.S.A0013
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### 3 CONDITIONALLY and PURELY OPTIONAL Attributes
    ### Attribute[ 26]: SafetyStatus  ==========================
    - label: "3a: read the RO mandatory attribute default: SafetyStatus"
      command: "readAttribute"
      attribute: "SafetyStatus"
      PICS: WNCV.S.A001a
      response:
          constraints:
              type: bitmap16
              minValue: 0
              maxValue: 2047

    ### Attribute[  1]: PhysicalClosedLimitLift  ====================
    - label:
          "3b: read the RO optional attribute default: PhysicalClosedLimitLift"
      command: "readAttribute"
      attribute: "PhysicalClosedLimitLift"
      PICS: WNCV.S.A0001
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[  2]: PhysicalClosedLimitTilt  ====================
    - label:
          "3c: read the RO optional attribute default: PhysicalClosedLimitTilt"
      command: "readAttribute"
      attribute: "PhysicalClosedLimitTilt"
      PICS: WNCV.S.A0002
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[  3]: CurrentPositionLift  ====================
    - label: "3d: read the RO optional attribute default: CurrentPositionLift"
      command: "readAttribute"
      attribute: "CurrentPositionLift"
      PICS: WNCV.S.A0003
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[  4]: CurrentPositionTilt  ====================
    - label: "3e: read the RO optional attribute default: CurrentPositionTilt"
      command: "readAttribute"
      attribute: "CurrentPositionTilt"
      PICS: WNCV.S.A0004
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[  5]: NumberOfActuationsLift  ====================
    - label:
          "3f: read the RO optional attribute default: NumberOfActuationsLift"
      command: "readAttribute"
      attribute: "NumberOfActuationsLift"
      PICS: WNCV.S.A0005
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[  6]: NumberOfActuationsTilt  ====================
    - label:
          "3g: read the RO optional attribute default: NumberOfActuationsTilt"
      command: "readAttribute"
      attribute: "NumberOfActuationsTilt"
      PICS: WNCV.S.A0006
      response:
          constraints:
              type: int16u
              minValue: 0
              maxValue: 65535

    ### Attribute[  8]: CurrentPositionLiftPercentage  ====================
    - label:
          "3h: read the RO optional attribute default:
          CurrentPositionLiftPercentage"
      command: "readAttribute"
      attribute: "CurrentPositionLiftPercentage"
      PICS: WNCV.S.A0008
      response:
          constraints:
              type: Percent
              minValue: 0
              maxValue: 100

    ### Attribute[  9]: CurrentPositionTiltPercentage  ====================
    - label:
          "3i:read the RO optional attribute default:
          CurrentPositionTiltPercentage"
      command: "readAttribute"
      attribute: "CurrentPositionTiltPercentage"
      PICS: WNCV.S.A0009
      response:
          constraints:
              type: Percent
              minValue: 0
              maxValue: 100
    ###################################################
    # FYI Non Tested deprecated attributes
    # 20 VelocityLift
    # 21 AccelerationTimeLift
    # 22 DecelerationTimeLift
    # 24 IntermediateSetpointsLift
    # 25 IntermediateSetpointsTilt
    ###################################################
