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

name: 24.3.1. [TC-LVL-3.1] MoveToLevel Verification (DUT as Server)

PICS:
    - LVL.S

config:
    nodeId: 0x12344321
    cluster: "Level Control"
    endpoint: 1

tests:
    - label:
          "Commission DUT to TH (can be skipped if done in a preceding test)."
      cluster: "DelayCommands"
      command: "WaitForCommissionee"
      arguments:
          values:
              - name: "nodeId"
                value: nodeId

    - label: "Precondition Send On Command"
      cluster: "On/Off"
      PICS: OO.S.C01.Rsp
      command: "On"

    - label: "Check on/off attribute value is true after on command"
      cluster: "On/Off"
      PICS: OO.S.A0000
      command: "readAttribute"
      attribute: "OnOff"
      response:
          value: 1

    #Adding below step resolve the issue https://github.com/CHIP-Specifications/chip-certification-tool/issues/499
    - label:
          "Precondition: write default value of OnOffTransitionTime attribute"
      PICS: LVL.S.A0010
      command: "writeAttribute"
      attribute: "OnOffTransitionTime"
      arguments:
          value: 0

    - label: "Step 1: TH writes 0 to the Options attribute"
      PICS: LVL.S.A000f
      command: "writeAttribute"
      attribute: "Options"
      arguments:
          value: 0

    #NOTE - fix/workaround for https://github.com/CHIP-Specifications/chip-test-plans/issues/2176
    - label: "Step 1a: TH writes NULL to the OnLevel attribute"
      PICS: LVL.S.A0011
      command: "writeAttribute"
      attribute: "OnLevel"
      arguments:
          value: null

    - label: "Step 2a: TH sends Off command to DUT"
      cluster: "On/Off"
      PICS: LVL.S.C04.Rsp && OO.S.C00.Rsp
      command: "Off"

    - label:
          "Step 2b: TH sends a MoveToLevelWithOnOff command to DUT, with Level
          =50 and TransitionTime =0 (immediate)"
      PICS: LVL.S.C04.Rsp
      command: "MoveToLevelWithOnOff"
      arguments:
          values:
              - name: "Level"
                value: 50
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Step 2c: TH reads OnOff attribute (On/Off cluster) from DUT"
      cluster: "On/Off"
      PICS: OO.S.A0000 && LVL.S.C04.Rsp
      command: "readAttribute"
      attribute: "OnOff"
      response:
          value: 1

    - label: "Step 2d: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C04.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 50

    - label: "Step 3a: TH sends On command to DUT"
      cluster: "On/Off"
      PICS: LVL.S.C04.Rsp && OO.S.C01.Rsp
      command: "On"

    - label:
          "Step 3b: TH sends a MoveToLevel command to DUT, with Level =50 and
          TransitionTime =0 (immediate)"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 50
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Step 3c: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 50

    - label:
          "Step 4a: TH sends a MoveToLevel command to the DUT with Level = 200
          and TransitionTime = 300 (30 s). This means the level should increase
          by 150 units in 30s, so 5 units/s"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 200
              - name: "TransitionTime"
                value: 300
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Wait 10000ms"
      cluster: "DelayCommands"
      command: "WaitForMs"
      arguments:
          values:
              - name: "ms"
                value: 10000

    - label:
          "Step 4b: After 10 seconds, TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000 && LVL.S.M.VarRate
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          constraints:
              minValue: 85
              maxValue: 115

    - label: "Wait 10000ms"
      cluster: "DelayCommands"
      command: "WaitForMs"
      arguments:
          values:
              - name: "ms"
                value: 10000

    - label:
          "Step 4c: After another 10 seconds, TH reads CurrentLevel attribute
          from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000 && LVL.S.M.VarRate
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          constraints:
              minValue: 127
              maxValue: 173

    - label: "Wait 10000ms"
      cluster: "DelayCommands"
      command: "WaitForMs"
      arguments:
          values:
              - name: "ms"
                value: 10000

    - label:
          "Step 4d:After another 10 seconds, TH reads CurrentLevel attribute
          from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000 && LVL.S.M.VarRate
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          constraints:
              minValue: 170
              maxValue: 200

    - label: "Wait 5000ms"
      cluster: "DelayCommands"
      command: "WaitForMs"
      arguments:
          values:
              - name: "ms"
                value: 5000

    - label:
          "Step 4e: After another 5 seconds, TH reads CurrentLevel attribute
          from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000 && LVL.S.M.VarRate
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 200

    - label:
          "Step 4f: TH reads CurrentLevel attribute from DUT (after DUT has
          finished the transition)"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000 && !LVL.S.M.VarRate
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 200

    - label: "Step 5a: TH writes 0x00 to the Options attribute"
      PICS: LVL.S.A000f
      command: "writeAttribute"
      attribute: "Options"
      arguments:
          value: 0

    - label: "Step 5b: TH reads the Options attribute from the DUT"
      PICS: LVL.S.A000f
      command: "readAttribute"
      attribute: "Options"
      response:
          value: 0

    - label: "Step 5c: TH sends On command to DUT"
      cluster: "On/Off"
      PICS: OO.S.C01.Rsp
      command: "On"

    - label:
          "Step 5d: TH sends a MoveToLevel command to the DUT with: 1)Level =
          100 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x00
          4)OptionsOverride = 0x00"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 100
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Step 5e: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 100

    - label: "Step 5f: TH sends Off command to DUT"
      cluster: "On/Off"
      PICS: OO.S.C00.Rsp
      command: "Off"

    - label:
          "Step 5g: TH sends a MoveToLevel command to the DUT with: 1)Level =
          120 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x00
          4)OptionsOverride = 0x00"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 120
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Step 5h: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 100

    - label:
          "Step 5i: TH sends a MoveToLevel command to the DUT with: 1)Level =
          140 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x01
          4)OptionsOverride = 0x00"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 140
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 1
              - name: "OptionsOverride"
                value: 0

    - label: "Step 5j: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 100

    - label:
          "Step 5k: TH sends a MoveToLevel command to the DUT with: 1)Level =
          160 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x01
          4)OptionsOverride = 0x01"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 160
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 1
              - name: "OptionsOverride"
                value: 1

    - label: "Step 5l: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 160

    - label: "Step 6a: TH writes 0x01 to the Options attribute"
      PICS: LVL.S.A000f
      command: "writeAttribute"
      attribute: "Options"
      arguments:
          value: 1

    - label: "Step 6b: TH reads the Options attribute from the DUT"
      PICS: LVL.S.A000f
      command: "readAttribute"
      attribute: "Options"
      response:
          value: 1

    - label: "Step 6c: TH sends On command to DUT"
      cluster: "On/Off"
      PICS: OO.S.C01.Rsp
      command: "On"

    - label:
          "Step 6d: TH sends a MoveToLevel command to the DUT with: 1)Level =
          100 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x00
          4)OptionsOverride = 0x00"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 100
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Step 6e: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 100

    - label: "Step 6f: TH sends Off command to DUT"
      cluster: "On/Off"
      PICS: OO.S.C00.Rsp
      command: "Off"

    - label:
          "Step 6g: TH sends a MoveToLevel command to the DUT with: 1)Level =
          120 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x00
          4)OptionsOverride = 0x00"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 120
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 0
              - name: "OptionsOverride"
                value: 0

    - label: "Step 6h: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 120

    - label:
          "Step 6i: TH sends a MoveToLevel command to the DUT with: 1)Level =
          140 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x01
          4)OptionsOverride = 0x00"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 140
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 1
              - name: "OptionsOverride"
                value: 0

    - label: "Step 6j: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 120

    - label:
          "Step 6k: TH sends a MoveToLevel command to the DUT with: 1)Level =
          160 2)TransitionTime = 0 (immediate) 3)OptionsMask = 0x01
          4)OptionsOverride = 0x01"
      PICS: LVL.S.C00.Rsp
      command: "MoveToLevel"
      arguments:
          values:
              - name: "Level"
                value: 160
              - name: "TransitionTime"
                value: 0
              - name: "OptionsMask"
                value: 1
              - name: "OptionsOverride"
                value: 1

    - label: "Step 6l: TH reads CurrentLevel attribute from DUT"
      PICS: LVL.S.C00.Rsp && LVL.S.A0000
      command: "readAttribute"
      attribute: "CurrentLevel"
      response:
          value: 160
