# 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: 34.3.1. [TC-PRS-3.1] Attributes with Client as DUT

config:
    nodeId: 0x12344321
    cluster: "Pressure Measurement"
    endpoint: 0

tests:
    - label: "Wait for the device to be commissioned"
      cluster: "DelayCommands"
      command: "WaitForCommissioning"

    - label: "Read attribute: MeasuredValue"
      wait: "readAttribute"
      attribute: "MeasuredValue"

    - label: "Read attribute: MinMeasuredValue"
      wait: "readAttribute"
      attribute: "MinMeasuredValue"

    - label: "Read attribute: MaxMeasuredValue"
      wait: "readAttribute"
      attribute: "MaxMeasuredValue"

    - label: "Read attribute: Tolerance"
      wait: "readAttribute"
      attribute: "Tolerance"

    - label: "Read attribute: ScaledValue"
      wait: "readAttribute"
      attribute: "ScaledValue"

    - label: "Read attribute: MinScaledValue"
      wait: "readAttribute"
      attribute: "MinScaledValue"

    - label: "Read attribute: MaxScaledValue"
      wait: "readAttribute"
      attribute: "MaxScaledValue"

    - label: "Read attribute: ScaledTolerance"
      wait: "readAttribute"
      attribute: "ScaledTolerance"

    - label: "Read attribute: Scale"
      wait: "readAttribute"
      attribute: "Scale"
