Skip to content

Commit

Permalink
Update and add additional BOOLCFG test scripts (#31105)
Browse files Browse the repository at this point in the history
* Rename and update 2.1

* Added 3.1 test script

* Fix restyle

* Added BOOLCFG_1_1 YAML test

* Fix restyle

* Fix restyle2

* Fix restyle3

* Fixed BOOLCFG YAML

* Fix restyle

* Fix restyle2

* Restyle

* Added BOOLCFG 4.1 test script

* Additional test scripts and minor fixes

* Added missing step descriptions in 4.3

* Minor read function rename

* Minor adjustment to 4.2 step 3d

* Added 4.4 test script

* Remove print from test script

* Adjusted test step id

* Adding 5.1 test script

* Fix wrong test step description for 5.1

* Adding 5.2 test script

* Remove unused import

* Adjusted variable name and test step

* Added test event trigger for 4.2

* Adding test event triggers for 4.3

* Adding test event triggers for 4.4

* Adding test event triggers for 5.1

* Adding test event triggers for 5.2 and fixed step description

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Remove debug code

* Converted test skipping to for loop

* Updated 2.1 based on review comments

* Remove unused variable declaration in 3.1

* Remove unused variable declaration in 4.1

* Restyle

* Adjustment to 1.1 test based on latest spec

* Added BOOLCFG PICS to ci-pics-values

* Added BOOLCFG to PICS.yaml

* Fixed invalid PICS

---------

Co-authored-by: C Freeman <[email protected]>
  • Loading branch information
2 people authored and pull[bot] committed Jan 26, 2024
1 parent 9f7d204 commit 004aeba
Show file tree
Hide file tree
Showing 13 changed files with 1,762 additions and 73 deletions.
66 changes: 66 additions & 0 deletions src/app/tests/suites/certification/PICS.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9355,3 +9355,69 @@ PICS:

- label: "Does the device implement sending the Resume command?"
id: RVCOPSTATE.C.C04.Tx

#
#Boolean State Configuration
#
- label:
"Does the device implement the Boolean State Configuration cluster as
a server?"
id: BOOLCFG.S

#Features
- label: "Does the device support visual alarms?"
id: BOOLCFG.S.F00

- label: "Does the device support audible alarms??"
id: BOOLCFG.S.F01

- label:
"Does the device support the ability to suppress or acknowledge
alarms?"
id: BOOLCFG.S.F02

- label:
"Does the device support the ability to set level of threshold
detection sensitivity?"
id: BOOLCFG.S.F03

#Attributes
- label: "Does the device implement the CurrentSensitivityLevel attribute?"
id: BOOLCFG.S.A0000

- label:
"Does the device implement the SupportedSensitivityLevels attribute?"
id: BOOLCFG.S.A0001

- label: "Does the device implement the DefaultSensitivityLevel attribute?"
id: BOOLCFG.S.A0002

- label: "Does the device implement the AlarmsActive attribute?"
id: BOOLCFG.S.A0003

- label: "Does the device implement the AlarmsSuppressed attribute?"
id: BOOLCFG.S.A0004

- label: "Does the device implement the AlarmsEnabled attribute?"
id: BOOLCFG.S.A0005

- label: "Does the device implement the AlarmsSupported attribute?"
id: BOOLCFG.S.A0006

- label: "Does the device implement the SensorFault attribute?"
id: BOOLCFG.S.A0007

#Commands received
- label: "Does the device implement receiving the SuppressAlarm command?"
id: BOOLCFG.S.C00.Rsp

- label:
"Does the device implement receiving the EnableDisableAlarm command?"
id: BOOLCFG.S.C01.Rsp

#Events
- label: "Does the device implement the AlarmsStateChanged event?"
id: BOOLCFG.S.E00

- label: "Does the device implement the SensorFault event?"
id: BOOLCFG.S.E01
292 changes: 292 additions & 0 deletions src/app/tests/suites/certification/Test_TC_BOOLCFG_1_1.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,292 @@
# Copyright (c) 2024 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: 69.1.1. [TC-BOOLCFG-1.1] Global attributes with server as DUT

PICS:
- BOOLCFG.S

config:
nodeId: 0x12344321
cluster: "Boolean State Configuration"
endpoint: 1

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

- label: "Step 2: Read the global attribute: ClusterRevision"
command: "readAttribute"
attribute: "ClusterRevision"
response:
value: 1
constraints:
type: int16u

- label: "Step 3a: Read the global attribute: FeatureMap"
command: "readAttribute"
attribute: "FeatureMap"
PICS:
( !BOOLCFG.S.F00 && !BOOLCFG.S.F01 && !BOOLCFG.S.F02 && !BOOLCFG.S.F03
)
response:
value: 0
constraints:
type: bitmap32

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

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

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

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

- label: "Step 4a: Read the global attribute: AttributeList"
PICS: PICS_EVENT_LIST_ENABLED
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [65528, 65529, 65530, 65531, 65532, 65533]

- label: "Step 4a: Read the global attribute: AttributeList"
PICS: "!PICS_EVENT_LIST_ENABLED"
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [65528, 65529, 65531, 65532, 65533]

- label:
"Step 4b: Read the feature dependent(BOOLCFG.S.F00) attribute in
AttributeList"
PICS: BOOLCFG.S.F00
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [3, 6]

- label:
"Step 4c: Read the feature dependent(BOOLCFG.S.F00) optional attribute
in AttributeList"
PICS: BOOLCFG.S.F00 && BOOLCFG.S.A0005
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [5]

- label:
"Step 4d: Read the feature dependent(BOOLCFG.S.F01) attribute in
AttributeList"
PICS: BOOLCFG.S.F01
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [3, 6]

- label:
"Step 4e: Read the feature dependent(BOOLCFG.S.F01) optional attribute
in AttributeList"
PICS: BOOLCFG.S.F01 && BOOLCFG.S.A0005
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [5]

- label:
"Step 4f: Read the feature dependent(BOOLCFG.S.F02) attribute in
AttributeList"
PICS: BOOLCFG.S.F02
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [4]

- label:
"Step 4g: Read the feature dependent(BOOLCFG.S.F03) attribute in
AttributeList"
PICS: BOOLCFG.S.F03
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [0, 1]

- label:
"Step 4h: Read the feature dependent(BOOLCFG.S.F03) optional attribute
in AttributeList"
PICS: BOOLCFG.S.F03 && BOOLCFG.S.A0002
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [2]

- label:
"Step 4i: TH reads optional (SensorFault) attribute in AttributeList"
PICS: BOOLCFG.S.A0007
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [7]

- label: "Step 5a: Read the global attribute: EventList"
PICS:
PICS_EVENT_LIST_ENABLED && !BOOLCFG.S.F00 && !BOOLCFG.S.F01 &&
!BOOLCFG.S.E01
command: "readAttribute"
attribute: "EventList"
response:
value: []
constraints:
type: list

- label:
"Step 5b: Read the feature dependent(BOOLCFG.S.F00)
(AlarmsStateChanged) event in EventList"
PICS: PICS_EVENT_LIST_ENABLED && BOOLCFG.S.F00
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0]

- label:
"Step 5c: Read the feature dependent(BOOLCFG.S.F01)
(AlarmsStateChanged) event in EventList"
PICS: PICS_EVENT_LIST_ENABLED && BOOLCFG.S.F01
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0]

- label: "Step 5d: Read the optional (SensorFault) event in EventList"
PICS: PICS_EVENT_LIST_ENABLED && BOOLCFG.S.E01
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [1]

- label: "Step 6a: Read the global attribute: AcceptedCommandList"
PICS: ( !BOOLCFG.S.F00 && !BOOLCFG.S.F01 && !BOOLCFG.S.F02 )
command: "readAttribute"
attribute: "AcceptedCommandList"
response:
value: []
constraints:
type: list

- label:
"Step 6b: Read the feature dependent(BOOLCFG.S.F02) (SuppressAlarm)
command in AcceptedCommandList"
PICS: BOOLCFG.S.F02
command: "readAttribute"
attribute: "AcceptedCommandList"
response:
constraints:
type: list
contains: [0]

- label:
"Step 6c: Read the feature dependent(BOOLCFG.S.F00)
(EnableDisableAlarm) command in AcceptedCommandList"
PICS: BOOLCFG.S.F00
command: "readAttribute"
attribute: "AcceptedCommandList"
response:
constraints:
type: list
contains: [1]

- label:
"Step 6d: Read the feature dependent(BOOLCFG.S.F01)
(EnableDisableAlarm) command in AcceptedCommandList"
PICS: BOOLCFG.S.F01
command: "readAttribute"
attribute: "AcceptedCommandList"
response:
constraints:
type: list
contains: [1]

- label: "Step 7: Read the global attribute: GeneratedCommandList"
command: "readAttribute"
attribute: "GeneratedCommandList"
response:
value: []
constraints:
type: list
18 changes: 18 additions & 0 deletions src/app/tests/suites/certification/ci-pics-values
Original file line number Diff line number Diff line change
Expand Up @@ -2655,3 +2655,21 @@ REFALM.S.A0003=1
REFALM.S.E00=1
REFALM.S.C00.Rsp=1
REFALM.S.C01.Rsp=1

BOOLCFG.S=1
BOOLCFG.S.F00=1
BOOLCFG.S.F01=1
BOOLCFG.S.F02=1
BOOLCFG.S.F03=1
BOOLCFG.S.A0000=1
BOOLCFG.S.A0001=1
BOOLCFG.S.A0002=1
BOOLCFG.S.A0003=1
BOOLCFG.S.A0004=1
BOOLCFG.S.A0005=1
BOOLCFG.S.A0006=1
BOOLCFG.S.A0007=1
BOOLCFG.S.E00=1
BOOLCFG.S.E01=1
BOOLCFG.S.C00.Rsp=1
BOOLCFG.S.C01.Rsp=1
2 changes: 1 addition & 1 deletion src/controller/python/chip/clusters/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@

__all__ = [Attribute, CHIPClusters, Command, AccessControl, AccountLogin, Actions, ActivatedCarbonFilterMonitoring, AdministratorCommissioning, AirQuality,
ApplicationBasic, ApplicationLauncher, AudioOutput, BallastConfiguration, BarrierControl, BasicInformation,
BinaryInputBasic, Binding, BooleanStateConfiguration, BooleanState, BridgedDeviceBasicInformation, CarbonDioxideConcentrationMeasurement,
BinaryInputBasic, Binding, BooleanState, BooleanStateConfiguration, BridgedDeviceBasicInformation, CarbonDioxideConcentrationMeasurement,
CarbonMonoxideConcentrationMeasurement, Channel,
ColorControl, ContentLauncher, Descriptor, DeviceEnergyManagement, DiagnosticLogs, DishwasherAlarm, DishwasherMode,
DoorLock, ElectricalMeasurement, EnergyEvse, EthernetNetworkDiagnostics, FanControl, FaultInjection, FixedLabel, FlowMeasurement,
Expand Down
Loading

0 comments on commit 004aeba

Please sign in to comment.