# Copyright (c) 2023 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: 145.1.1. [TC-FLDCONC-1.1] Global Attributes with DUT as Server

PICS:
    - FLDCONC.S

config:
    nodeId: 0x12344321
    cluster: "Formaldehyde Concentration Measurement"
    endpoint: 1

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

    - label: "Step 2: TH reads from the DUT the ClusterRevision attribute."
      command: "readAttribute"
      attribute: "ClusterRevision"
      response:
          value: 3
          constraints:
              type: int16u

    - label:
          "Step 3a: TH reads from the DUT the FeatureMap attribute. and check
          for either bit 0 or 1 set"
      command: "readAttribute"
      attribute: "FeatureMap"
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x03]

    - label:
          "Step 3b: Given FLDCONC.S.F00(MEA) ensure featuremap has the correct
          bit set"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: FLDCONC.S.F00
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x1]

    - label:
          "Step 3c: Given FLDCONC.S.F00(MEA) is not set, ensure featuremap has
          the correct bit clear"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: " !FLDCONC.S.F00 "
      response:
          constraints:
              type: bitmap32
              hasMasksClear: [0x1]

    - label:
          "Step 3d: Given FLDCONC.S.F01(LEV) ensure featuremap has the correct
          bit set"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: FLDCONC.S.F01
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x2]

    - label:
          "Step 3e: Given FLDCONC.S.F01(LEV) is not set, ensure featuremap has
          the correct bit clear"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: " !FLDCONC.S.F01 "
      response:
          constraints:
              type: bitmap32
              hasMasksClear: [0x2]

    - label:
          "Step 3f: Given FLDCONC.S.F02(MED) ensure featuremap has the correct
          bit set"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: FLDCONC.S.F02 && FLDCONC.S.F01
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x4, 0x2]

    - label:
          "Step 3g: Given FLDCONC.S.F02(MED) is not set, ensure featuremap has
          the correct bit clear"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: " !FLDCONC.S.F02 && !FLDCONC.S.F01"
      response:
          constraints:
              type: bitmap32
              hasMasksClear: [0x4]

    - label:
          "Step 3h: Given FLDCONC.S.F03(CRI) ensure featuremap has the correct
          bits set"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: FLDCONC.S.F03 && FLDCONC.S.F01
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x8, 0x2]

    - label:
          "Step 3i: Given FLDCONC.S.F03(CRI) is not set, ensure featuremap has
          the correct bit clear"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: " !FLDCONC.S.F03 && !FLDCONC.S.F01 "
      response:
          constraints:
              type: bitmap32
              hasMasksClear: [0x8]

    - label:
          "Step 3j: Given FLDCONC.S.F04(PEA) ensure featuremap has the correct
          bits set"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: FLDCONC.S.F04 && FLDCONC.S.F00
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x10, 0x1]

    - label:
          "Step 3k: Given FLDCONC.S.F04(PEA) is not set, ensure featuremap has
          the correct bit clear"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: " !FLDCONC.S.F04 && !FLDCONC.S.F00 "
      response:
          constraints:
              type: bitmap32
              hasMasksClear: [0x10]

    - label:
          "Step 3l: Given FLDCONC.S.F05(AVG) ensure featuremap has the correct
          bits set"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: FLDCONC.S.F05 && FLDCONC.S.F00
      response:
          constraints:
              type: bitmap32
              hasMasksSet: [0x20, 0x1]

    - label:
          "Step 3m: Given FLDCONC.S.F05(AVG) is not set, ensure featuremap has
          the correct bit clear"
      command: "readAttribute"
      attribute: "FeatureMap"
      PICS: " !FLDCONC.S.F05 && !FLDCONC.S.F00"
      response:
          constraints:
              type: bitmap32
              hasMasksClear: [0x20]

    - label: "Step 4a: TH reads from the DUT the AttributeList attribute."
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: PICS_EVENT_LIST_ENABLED
      response:
          constraints:
              type: list
              contains: [9, 65528, 65529, 65530, 65531, 65532, 65533]

    - label: "Step 4a: TH reads from the DUT the AttributeList attribute."
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: "!PICS_EVENT_LIST_ENABLED"
      response:
          constraints:
              type: list
              contains: [9, 65528, 65529, 65531, 65532, 65533]

    - label:
          "Step 4b: TH reads the optional attribute Uncertainty in AttributeList"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: FLDCONC.S.A0007 && FLDCONC.S.F00
      response:
          constraints:
              type: list
              contains: [7]

    - label:
          "Step 4c: Check the optional attribute Uncertainty is excluded from
          AttributeList when FLDCONC.S.A0007 is not set"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: " !FLDCONC.S.A0007 "
      response:
          constraints:
              type: list
              excludes: [7]

    - label:
          "Step 4d: TH reads the optional, feature dependent attributes
          MeasuredValue, MinMeasuredValue, MaxMeasuredValue and Measurement Unit
          in AttributeList"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: FLDCONC.S.F00
      response:
          constraints:
              type: list
              contains: [0, 1, 2, 8]

    - label:
          "Step 4e: Check that MeasuredValue, MinMeasuredValue,
          MaxMeasuredValue, Measurement Unit and Uncertainty are excluded from
          AttributeList when FLDCONC.S.F00 (MEA) is not set"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: " !FLDCONC.S.F00 "
      response:
          constraints:
              type: list
              excludes: [0, 1, 2, 7, 8]

    - label:
          "Step 4f: TH reads the optional, feature dependent attributes
          PeakMeasuredValue & PeakMeasuredValueWindow in AttributeList"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: FLDCONC.S.F04
      response:
          constraints:
              type: list
              contains: [3, 4]

    - label:
          "Step 4g: Check that PeakMeasuredValue & PeakMeasuredValueWindow are
          excluded from AttributeList when FLDCONC.S.F04 (PEA) is not set"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: " !FLDCONC.S.F04 "
      response:
          constraints:
              type: list
              excludes: [3, 4]

    - label:
          "Step 4h: TH reads the optional, feature dependent attributes
          AverageMeasuredValue AverageMeasuredValueWindow in AttributeList"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: FLDCONC.S.F05
      response:
          constraints:
              type: list
              contains: [5, 6]

    - label:
          "Step 4i: Check that AverageMeasuredValue and
          AverageMeasuredValueWindow are excluded from AttributeList when
          FLDCONC.S.F05 (AVG) is not set"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: " !FLDCONC.S.F05 "
      response:
          constraints:
              type: list
              excludes: [5, 6]

    - label:
          "Step 4j: TH reads the optional, feature dependent attribute
          LevelValue in AttributeList"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: FLDCONC.S.F01
      response:
          constraints:
              type: list
              contains: [10]

    - label:
          "Step 4k: Check that LevelValue is excluded from AttributeList when
          FLDCONC.S.F01 (LEV) is not set"
      command: "readAttribute"
      attribute: "AttributeList"
      PICS: " !FLDCONC.S.F01 "
      response:
          constraints:
              type: list
              excludes: [10]

    - label: "Step 5: TH reads from the DUT the EventList attribute."
      PICS: PICS_EVENT_LIST_ENABLED
      command: "readAttribute"
      attribute: "EventList"
      response:
          value: []
          constraints:
              type: list

    - label: "Step 6: TH reads from the DUT the AcceptedCommandList attribute."
      command: "readAttribute"
      attribute: "AcceptedCommandList"
      response:
          value: []
          constraints:
              type: list

    - label: "Step 7: TH reads from the DUT the GeneratedCommandList attribute."
      command: "readAttribute"
      attribute: "GeneratedCommandList"
      response:
          value: []
          constraints:
              type: list
