Modified TSTAT sep 21 (#22800)
* Fixed issue #561and #562
TSTAT-2.1
TSTAT-2.2
* Auto generated files
* Restyled by whitespace
* Disabled TSTAT tests in Darwin
* Auto generated files
* Restyled by whitespace
* Fix #2296
* Auto generated files
Co-authored-by: Restyled.io <commits@restyled.io>
diff --git a/examples/darwin-framework-tool/templates/tests/ciTests.json b/examples/darwin-framework-tool/templates/tests/ciTests.json
index fd8f884..50f8ce2 100644
--- a/examples/darwin-framework-tool/templates/tests/ciTests.json
+++ b/examples/darwin-framework-tool/templates/tests/ciTests.json
@@ -20,6 +20,8 @@
"Test_TC_BINFO_2_1",
"Test_TC_SWTCH_2_1",
"Test_TC_G_2_1",
- "Test_TC_FLABEL_2_1"
+ "Test_TC_FLABEL_2_1",
+ "Test_TC_TSTAT_2_1",
+ "Test_TC_TSTAT_2_2"
]
}
diff --git a/src/app/tests/suites/certification/Test_TC_ACL_2_2.yaml b/src/app/tests/suites/certification/Test_TC_ACL_2_2.yaml
index a7f4c9b..5146304 100644
--- a/src/app/tests/suites/certification/Test_TC_ACL_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_ACL_2_2.yaml
@@ -42,14 +42,72 @@
type: list
contains: [31]
+ #Endpoint configuration is not supported in YAML
- label:
"TH1 reads DUT Descriptor cluster ServerList attribute from every
Endpoint except 0"
- command: "readAttribute"
- cluster: "Descriptor"
- endpoint: 1
- attribute: "ServerList"
- response:
- constraints:
- type: list
- excludes: [31]
+ verification: |
+ ./chip-tool descriptor read server-list 1 1
+
+
+ On TH1(Chiptool) ,Verify the serverList attribute of Descriptor Cluster without an element of 31( 0x001F)
+
+ [1656412927.698026][3383:3388] CHIP:DMG: SuppressResponse = true,
+ [1656412927.698052][3383:3388] CHIP:DMG: InteractionModelRevision = 1
+ [1656412927.698076][3383:3388] CHIP:DMG: }
+ [1656412927.698852][3383:3388] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_001D Attribute 0x0000_0001 DataVersion: 239898735
+ [1656412927.698963][3383:3388] CHIP:TOO: server list: 44 entries
+ [1656412927.698997][3383:3388] CHIP:TOO: [1]: 3
+ [1656412927.699023][3383:3388] CHIP:TOO: [2]: 4
+ [1656412927.699050][3383:3388] CHIP:TOO: [3]: 5
+ [1656412927.699075][3383:3388] CHIP:TOO: [4]: 6
+ [1656412927.699101][3383:3388] CHIP:TOO: [5]: 7
+ [1656412927.699127][3383:3388] CHIP:TOO: [6]: 8
+ [1656412927.699153][3383:3388] CHIP:TOO: [7]: 15
+ [1656412927.699179][3383:3388] CHIP:TOO: [8]: 29
+ [1656412927.699205][3383:3388] CHIP:TOO: [9]: 30
+ [1656412927.699231][3383:3388] CHIP:TOO: [10]: 37
+ [1656412927.699258][3383:3388] CHIP:TOO: [11]: 47
+ [1656412927.699284][3383:3388] CHIP:TOO: [12]: 59
+ [1656412927.699310][3383:3388] CHIP:TOO: [13]: 64
+ [1656412927.699336][3383:3388] CHIP:TOO: [14]: 65
+ [1656412927.699361][3383:3388] CHIP:TOO: [15]: 69
+ [1656412927.699387][3383:3388] CHIP:TOO: [16]: 80
+ [1656412927.699414][3383:3388] CHIP:TOO: [17]: 257
+ [1656412927.699440][3383:3388] CHIP:TOO: [18]: 258
+ [1656412927.699466][3383:3388] CHIP:TOO: [19]: 259
+ [1656412927.699492][3383:3388] CHIP:TOO: [20]: 512
+ [1656412927.699518][3383:3388] CHIP:TOO: [21]: 513
+ [1656412927.699544][3383:3388] CHIP:TOO: [22]: 514
+ [1656412927.699571][3383:3388] CHIP:TOO: [23]: 516
+ [1656412927.699596][3383:3388] CHIP:TOO: [24]: 768
+ [1656412927.699623][3383:3388] CHIP:TOO: [25]: 1024
+ [1656412927.699649][3383:3388] CHIP:TOO: [26]: 1026
+ [1656412927.699675][3383:3388] CHIP:TOO: [27]: 1027
+ [1656412927.699701][3383:3388] CHIP:TOO: [28]: 1028
+ [1656412927.699727][3383:3388] CHIP:TOO: [29]: 1029
+ [1656412927.699754][3383:3388] CHIP:TOO: [30]: 1030
+ [1656412927.699780][3383:3388] CHIP:TOO: [31]: 1283
+ [1656412927.699806][3383:3388] CHIP:TOO: [32]: 1284
+ [1656412927.699832][3383:3388] CHIP:TOO: [33]: 1285
+ [1656412927.699858][3383:3388] CHIP:TOO: [34]: 1286
+ [1656412927.699884][3383:3388] CHIP:TOO: [35]: 1287
+ [1656412927.699911][3383:3388] CHIP:TOO: [36]: 1288
+ [1656412927.699937][3383:3388] CHIP:TOO: [37]: 1289
+ [1656412927.699963][3383:3388] CHIP:TOO: [38]: 1290
+ [1656412927.700002][3383:3388] CHIP:TOO: [39]: 1291
+ [1656412927.700029][3383:3388] CHIP:TOO: [40]: 1292
+ [1656412927.700056][3383:3388] CHIP:TOO: [41]: 1293
+ [1656412927.700082][3383:3388] CHIP:TOO: [42]: 1294
+ [1656412927.700108][3383:3388] CHIP:TOO: [43]: 2820
+ [1656412927.700134][3383:3388] CHIP:TOO: [44]: 4294048773
+ [1656412927.700251][3383:3388] CHIP:EM: Sending Standalone Ack for MessageCounter:186152197 on exchange 39489i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ PICS: PICS_USER_PROMPT
+ arguments:
+ values:
+ - name: "message"
+ value: "Factory Reset the DUT and enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8.yaml b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8.yaml
index 597becc..893cc48 100644
--- a/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_APPLAUNCHER_3_8.yaml
@@ -53,10 +53,25 @@
- name: "status"
value: 0
+ #Endpoint configuration is not supported in YAML
- label: "Reads the Status attribute"
- cluster: "Application Basic"
- endpoint: 3
- command: "readAttribute"
- attribute: "Status"
- response:
- value: 0
+ PICS: PICS_USER_PROMPT
+ verification: |
+ The TH commands for this test step can be invoked using chip-tool (when DUT is a commissionee) or tv-casting-app (when DUT is a commissioner):
+ ./chip-tool applicationbasic read status 1 3
+ ./chip-tv-casting-app applicationbasic read status 1 3
+
+ On TH verify that the Status attribute value as 0
+ [1658208937.049446][2428:2433] CHIP:DMG: InteractionModelRevision = 1
+ [1658208937.049483][2428:2433] CHIP:DMG: }
+ [1658208937.049690][2428:2433] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_050D Attribute 0x0000_0005 DataVersion: 3850684771
+ [1658208937.049809][2428:2433] CHIP:TOO: Status: 0
+ [1658208937.049922][2428:2433] CHIP:EM: Sending Standalone Ack for MessageCounter:75774840 on exchange 3041i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
diff --git a/src/app/tests/suites/certification/Test_TC_AUDIOOUTPUT_1_8.yaml b/src/app/tests/suites/certification/Test_TC_AUDIOOUTPUT_1_8.yaml
index 8d1caa4..24dd9c6 100644
--- a/src/app/tests/suites/certification/Test_TC_AUDIOOUTPUT_1_8.yaml
+++ b/src/app/tests/suites/certification/Test_TC_AUDIOOUTPUT_1_8.yaml
@@ -67,16 +67,6 @@
contains: [0]
- label: "Read the global attribute: GeneratedCommandList"
- PICS: AUDIOOUTPUT.S.NU
- command: "readAttribute"
- attribute: "GeneratedCommandList"
- response:
- value: [1]
- constraints:
- type: list
-
- - label: "Read the global attribute: GeneratedCommandList"
- PICS: " !AUDIOOUTPUT.S.NU "
command: "readAttribute"
attribute: "GeneratedCommandList"
response:
diff --git a/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml b/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml
index 6cf8fa3..01bfc0f 100644
--- a/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml
+++ b/src/app/tests/suites/certification/Test_TC_TSTAT_2_1.yaml
@@ -31,6 +31,87 @@
- name: "nodeId"
value: nodeId
+ - label:
+ "Saving value for comparision in step 5 read AbsMinCoolSetpointLimit
+ attribute"
+ PICS: TSTAT.S.A0005
+ command: "readAttribute"
+ attribute: "AbsMinCoolSetpointLimit"
+ response:
+ saveAs: AbsMinCoolSetpointLimitStep5
+
+ - label:
+ "Saving value for comparision in step 5 read attribute
+ MinSetpointDeadBand attribute"
+ PICS: TSTAT.S.A0019
+ command: "readAttribute"
+ attribute: "MinSetpointDeadBand"
+ response:
+ saveAs: MinSetpointDeadBand
+
+ - label:
+ "Saving value for comparision in step 6 read AbsMaxCoolSetpointLimit
+ attribute"
+ PICS: TSTAT.S.A0006
+ command: "readAttribute"
+ attribute: "AbsMaxCoolSetpointLimit"
+ response:
+ saveAs: AbsMaxCoolSetpointLimitStep6
+
+ - label:
+ "Saving value for comparision in step 17 read MinCoolSetpointLimit
+ attribute"
+ PICS: TSTAT.S.A0017
+ command: "readAttribute"
+ attribute: "MinCoolSetpointLimit"
+ response:
+ saveAs: MinCoolSetpointLimit
+
+ - label:
+ "Saving value for comparision in step 17 read MaxCoolSetpointLimit
+ attribute"
+ PICS: TSTAT.S.A0018
+ command: "readAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ response:
+ saveAs: MaxCoolSetpointLimit
+
+ - label:
+ "Saving value for comparision in step 13 read attribute
+ OccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F01
+ command: "readAttribute"
+ attribute: "OccupiedCoolingSetpoint"
+ response:
+ saveAs: OccupiedCoolingSetpoint
+
+ - label:
+ "Saving value for comparision in step 15 read attribute
+ AbsMinHeatSetpointLimit"
+ PICS: TSTAT.S.A0003
+ command: "readAttribute"
+ attribute: "AbsMinHeatSetpointLimit"
+ response:
+ saveAs: AbsMinHeat
+
+ - label:
+ "Saving value for comparision in step 15 read attribute
+ AbsMaxHeatSetpointLimit"
+ PICS: TSTAT.S.A0004
+ command: "readAttribute"
+ attribute: "AbsMaxHeatSetpointLimit"
+ response:
+ saveAs: AbsMaxHeat
+
+ - label:
+ "Saving value for comparision in step 16 read
+ UnoccupiedCoolingSetpoint attribute"
+ PICS: TSTAT.S.A0013
+ command: "readAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ response:
+ saveAs: UnoccupiedCoolingSetpoint
+
- label: "Reads mandatory attributes from DUT: LocalTemperature"
command: "readAttribute"
attribute: "LocalTemperature"
@@ -60,8 +141,30 @@
minValue: 0
maxValue: 1
- - label: "Reads mandatory attributes from DUT: AbsMinHeatSetpointLimit"
- PICS: TSTAT.S.A0003
+ - label:
+ "Read attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 feature is
+ supported"
+ PICS: TSTAT.S.A0003 && TSTAT.S.A0005 && TSTAT.S.F05
+ command: "readAttribute"
+ attribute: "AbsMinHeatSetpointLimit"
+ response:
+ constraints:
+ type: int16s
+ maxValue: AbsMinCoolSetpointLimitStep5 - MinSetpointDeadBand
+
+ - label:
+ "Read attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 feature is
+ supported"
+ PICS: TSTAT.S.A0003 && !TSTAT.S.A0005 && TSTAT.S.F05
+ command: "readAttribute"
+ attribute: "AbsMinHeatSetpointLimit"
+ response:
+ constraints:
+ type: int16s
+ maxValue: 1575
+
+ - label: "Read attribute AbsMinHeatSetpointLimit from DUT"
+ PICS: TSTAT.S.A0003 && !TSTAT.S.F05
command: "readAttribute"
attribute: "AbsMinHeatSetpointLimit"
response:
@@ -80,7 +183,7 @@
minValue: -27315
maxValue: 32767
- - label: "Reads optional attributes from DUT: AbsMinCoolSetpointLimit"
+ - label: "Read attribute AbsMinCoolSetpointLimit from DUT"
PICS: TSTAT.S.A0005
command: "readAttribute"
attribute: "AbsMinCoolSetpointLimit"
@@ -90,7 +193,7 @@
minValue: -27315
maxValue: 32767
- - label: "Reads optional attributes from DUT: AbsMaxCoolSetpointLimit"
+ - label: "Read attribute AbsMaxCoolSetpointLimit from DUT"
PICS: TSTAT.S.A0006
command: "readAttribute"
attribute: "AbsMaxCoolSetpointLimit"
@@ -137,11 +240,21 @@
response:
constraints:
type: int8s
- minValue: 25
- maxValue: -25
+ minValue: -25
+ maxValue: 25
- - label: "Reads optional attributes from DUT: OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F01
+ - label: "Read attribute OccupiedCoolingSetpoint from the DUT"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018
+ command: "readAttribute"
+ attribute: "OccupiedCoolingSetpoint"
+ response:
+ constraints:
+ type: int16s
+ minValue: MinCoolSetpointLimit
+ maxValue: MaxCoolSetpointLimit
+
+ - label: "Read attribute OccupiedCoolingSetpoint from the DUT"
+ PICS: TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018
command: "readAttribute"
attribute: "OccupiedCoolingSetpoint"
response:
@@ -150,8 +263,20 @@
minValue: 1600
maxValue: 3200
- - label: "Reads mandatory attributes from DUT: OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00
+ - label:
+ "Read attribute OccupiedHeatingSetpoint if TSTAT.S.F05 feature is
+ supported"
+ PICS: TSTAT.S.F05 && TSTAT.S.F00
+ command: "readAttribute"
+ attribute: "OccupiedHeatingSetpoint"
+ response:
+ constraints:
+ type: int16s
+ minValue: AbsMinCoolSetpointLimitStep5
+ maxValue: OccupiedCoolingSetpoint - MinSetpointDeadBand
+
+ - label: "Read attribute OccupiedHeatingSetpoint from the DUT"
+ PICS: TSTAT.S.F00 && !TSTAT.S.F05
command: "readAttribute"
attribute: "OccupiedHeatingSetpoint"
response:
@@ -161,7 +286,17 @@
maxValue: 3000
- label: "Read UnoccupiedCoolingSetpoint attribute from the DUT"
- PICS: TSTAT.S.F01 && TSTAT.S.F02
+ PICS: TSTAT.S.F05 && TSTAT.S.A0013
+ command: "readAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ response:
+ constraints:
+ type: int16s
+ minValue: AbsMinHeat
+ maxValue: AbsMaxHeat
+
+ - label: "Read UnoccupiedCoolingSetpoint attribute from the DUT"
+ PICS: TSTAT.S.F01 && TSTAT.S.F02 && !TSTAT.S.F05
command: "readAttribute"
attribute: "UnoccupiedCoolingSetpoint"
response:
@@ -171,7 +306,17 @@
maxValue: 3200
- label: "Read UnoccupiedHeatingSetpoint attribute from the DUT"
- PICS: TSTAT.S.F00 && TSTAT.S.F02
+ PICS: TSTAT.S.F00 && TSTAT.S.F02 && TSTAT.S.F05 && TSTAT.S.A0013
+ command: "readAttribute"
+ attribute: "UnoccupiedHeatingSetpoint"
+ response:
+ constraints:
+ type: int16s
+ minValue: 700
+ maxValue: UnoccupiedCoolingSetpoint - MinSetpointDeadBand
+
+ - label: "Read UnoccupiedHeatingSetpoint attribute from the DUT"
+ PICS: TSTAT.S.F00 && TSTAT.S.F02 && !TSTAT.S.F05
command: "readAttribute"
attribute: "UnoccupiedHeatingSetpoint"
response:
@@ -181,7 +326,17 @@
maxValue: 3000
- label: "Reads attribute from DUT: MinHeatSetpointLimit"
- PICS: TSTAT.S.A0015
+ PICS: TSTAT.S.A0015 && TSTAT.S.F05 && TSTAT.S.A0017
+ command: "readAttribute"
+ attribute: "MinHeatSetpointLimit"
+ response:
+ constraints:
+ type: int16s
+ minValue: 700
+ maxValue: MinCoolSetpointLimit - MinSetpointDeadBand
+
+ - label: "Read attribute MinHeatSetpointLimit from the DUT"
+ PICS: TSTAT.S.A0015 && !TSTAT.S.F05
command: "readAttribute"
attribute: "MinHeatSetpointLimit"
response:
@@ -190,37 +345,57 @@
minValue: 700
maxValue: 3000
- - label: "Reads attribute from DUT: MaxHeatSetpointLimit"
- PICS: TSTAT.S.A0016
+ - label: "Read attribute MaxHeatSetpointLimit from the DUT"
+ PICS: TSTAT.S.A0016 && !TSTAT.S.F05
command: "readAttribute"
attribute: "MaxHeatSetpointLimit"
response:
constraints:
type: int16s
- minValue: -27315
- maxValue: 32767
+ minValue: 700
+ maxValue: 3000
- - label: "Reads optional attributes from DUT: MinCoolSetpointLimit"
- PICS: TSTAT.S.A0017
+ - label: "Reads attribute from DUT: MaxHeatSetpointLimit"
+ PICS: TSTAT.S.A0016 && TSTAT.S.F05 && TSTAT.S.A0018
+ command: "readAttribute"
+ attribute: "MaxHeatSetpointLimit"
+ response:
+ constraints:
+ type: int16s
+ minValue: 700
+ maxValue: MaxCoolSetpointLimit - MinSetpointDeadBand
+
+ - label: "Read attribute MinCoolSetpointLimit from DUT"
+ PICS: TSTAT.S.A0017 && TSTAT.S.A0018 && TSTAT.S.A0005
command: "readAttribute"
attribute: "MinCoolSetpointLimit"
response:
constraints:
type: int16s
- minValue: -27315
- maxValue: 32767
+ minValue: AbsMinCoolSetpointLimitStep5
+ maxValue: MaxCoolSetpointLimit
- - label: "Reads optional attributes from DUT: MaxCoolSetpointLimit"
- PICS: TSTAT.S.A0018
+ - label: "Read attribute MinCoolSetpointLimit from DUT"
+ PICS: TSTAT.S.A0017 && !TSTAT.S.A0018 && !TSTAT.S.A0005
+ command: "readAttribute"
+ attribute: "MinCoolSetpointLimit"
+ response:
+ constraints:
+ type: int16s
+ minValue: 1600
+ maxValue: 3200
+
+ - label: "Read attribute MaxCoolSetpointLimit from DUT"
+ PICS: TSTAT.S.A0018 && TSTAT.S.A0006 && TSTAT.S.A0017
command: "readAttribute"
attribute: "MaxCoolSetpointLimit"
response:
constraints:
type: int16s
- minValue: -27315
- maxValue: 32767
+ minValue: MinCoolSetpointLimit
+ maxValue: AbsMaxCoolSetpointLimitStep6
- - label: "Reads optional attributes from DUT: MinSetpointDeadBand"
+ - label: "Read attribute MinSetpointDeadBand from DUT"
PICS: TSTAT.S.F05
command: "readAttribute"
attribute: "MinSetpointDeadBand"
@@ -240,7 +415,8 @@
minValue: 0
maxValue: 7
- - label: "Reads mandatory attributes from DUT: ControlSequenceOfOperation"
+ - label: "Read attribute ControlSequenceOfOperation from DUT"
+ PICS: TSTAT.S.A001b
command: "readAttribute"
attribute: "ControlSequenceOfOperation"
response:
@@ -249,7 +425,8 @@
minValue: 0
maxValue: 5
- - label: "Reads mandatory attributes from DUT: SystemMode"
+ - label: "Read attribute SystemMode from DUT"
+ PICS: TSTAT.S.A001c
command: "readAttribute"
attribute: "SystemMode"
response:
diff --git a/src/app/tests/suites/certification/Test_TC_TSTAT_2_2.yaml b/src/app/tests/suites/certification/Test_TC_TSTAT_2_2.yaml
index ab5fc6a..f402fa9 100644
--- a/src/app/tests/suites/certification/Test_TC_TSTAT_2_2.yaml
+++ b/src/app/tests/suites/certification/Test_TC_TSTAT_2_2.yaml
@@ -31,12 +31,124 @@
- name: "nodeId"
value: nodeId
+ - label: "Saving value for comparision in step 2a read MinCoolSetpointLimit"
+ PICS: TSTAT.S.A0017
+ command: "readAttribute"
+ attribute: "MinCoolSetpointLimit"
+ response:
+ saveAs: MinCoolSetpointLimit
+
+ - label: "Saving value for comparision in step 2a read MaxCoolSetpointLimit"
+ PICS: TSTAT.S.A0018
+ command: "readAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ response:
+ saveAs: MaxCoolSetpointLimit
+
+ - label:
+ "Saving value for comparision in step 2c read attribute
+ MinSetpointDeadBand"
+ PICS: TSTAT.S.A0019
+ command: "readAttribute"
+ attribute: "MinSetpointDeadBand"
+ response:
+ saveAs: MinSetpointDeadBand
+
+ - label: "Saving value for comparision in step 3a read MinHeatSetpointLimit"
+ PICS: TSTAT.S.A0015
+ command: "readAttribute"
+ attribute: "MinHeatSetpointLimit"
+ response:
+ saveAs: MinHeatSetpointLimit
+
+ - label:
+ "Saving value for comparision in step 3 reads
+ UnoccupiedCoolingSetpoint attribute"
+ command: "readAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ PICS: TSTAT.S.A0013
+ response:
+ saveAs: UnoccupiedCoolingSetpoint
+
+ - label: "Saving value for comparision in step 3a read MaxHeatSetpointLimit"
+ PICS: TSTAT.S.A0016
+ command: "readAttribute"
+ attribute: "MaxHeatSetpointLimit"
+ response:
+ saveAs: MaxHeatSetpointLimit
+
+ - label:
+ "Saving value for comparision in step3c read attribute
+ OccupiedHeatingSetpoint"
+ PICS: TSTAT.S.A0012
+ command: "readAttribute"
+ attribute: "OccupiedHeatingSetpoint"
+ response:
+ saveAs: OccupiedHeatingSetpoint
+
+ - label:
+ "Saving value for comparision in step3c read attribute
+ OccupiedCoolingSetpoint"
+ PICS: TSTAT.S.A0011
+ command: "readAttribute"
+ attribute: "OccupiedCoolingSetpoint"
+ response:
+ saveAs: OccupiedCoolingSetpoint
+
+ - label:
+ "Saving value for comparision in step 6a read attribute
+ AbsMinHeatSetpointLimit"
+ command: "readAttribute"
+ attribute: "AbsMinHeatSetpointLimit"
+ PICS: TSTAT.S.A0003
+ response:
+ saveAs: AbsMinHeatSetpointLimitValue
+
+ - label:
+ "Saving value for comparision in step 7a read attribute
+ AbsMaxHeatSetpointLimit"
+ command: "readAttribute"
+ attribute: "AbsMaxHeatSetpointLimit"
+ PICS: TSTAT.S.A0004
+ response:
+ saveAs: AbsMaxHeatSetpointLimitValue
+
+ - label:
+ "Saving value for comparision in step 8a read attribute
+ AbsMinCoolSetpointLimit"
+ command: "readAttribute"
+ attribute: "AbsMinCoolSetpointLimit"
+ PICS: TSTAT.S.A0005
+ response:
+ saveAs: AbsMinCoolSetpointLimit
+
+ - label:
+ "Saving value for comparision in step9a read attribute
+ AbsMaxCoolSetpointLimit"
+ command: "readAttribute"
+ attribute: "AbsMaxCoolSetpointLimit"
+ PICS: TSTAT.S.A0006
+ response:
+ saveAs: AbsMaxCoolSetpointLimit
+
+ #Using saved values when optional attributes are available
+ - label: "Read attribute OccupiedCoolingSetpoint from the DUT"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018
+ command: "readAttribute"
+ attribute: "OccupiedCoolingSetpoint"
+ response:
+ constraints:
+ type: int16s
+ minValue: MinCoolSetpointLimit
+ maxValue: MaxCoolSetpointLimit
+
+ #Using hard coded values when optional attributes are not available
- label:
"Reads OccupiedCoolingSetpoint attribute from Server DUT and verifies
that the value is within range"
command: "readAttribute"
attribute: "OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F01
+ PICS: TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018
response:
constraints:
type: int16s
@@ -63,23 +175,58 @@
- label:
"Writes OccupiedCoolingSetpoint to value below the
- ABSMinCoolSetpointLimit"
+ MinCoolSetpointLimit"
command: "writeAttribute"
attribute: "OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F01
+ PICS: TSTAT.S.F01 && !TSTAT.S.A0017
arguments:
value: 30
response:
error: CONSTRAINT_ERROR
+ #MinCoolSetPointLimit might be negative if not checked before decrement
+ - label:
+ "Writes OccupiedCoolingSetpoint to value below the
+ MinCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional attribute so its not compulsory to get the expected outcome
+
+ ./chip-tool thermostat write occupied-cooling-setpoint 3600 1 1
+ On TH(chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+ [1658386056.238286][2906:2911] CHIP:DMG: }
+ [1658386056.238356][2906:2911] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658386056.238389][2906:2911] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658386056.238449][2906:2911] CHIP:EM: Sending Standalone Ack for MessageCounter:41416222 on exchange 5788i
+ [1658386056.238525][2906:2911] CHIP:IN: Prepared secure message 0xffffa77ed9e8 to 0x0000000000000001 (1) of type 0x10 and protocolId (0, 0) on exchange 5788i with MessageCounter:113884573
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes OccupiedCoolingSetpoint to value above the
+ MaxCoolSetpointLimit"
+ command: "writeAttribute"
+ attribute: "OccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F01 && !TSTAT.S.A0017
+ arguments:
+ value: 4000
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes OccupiedCoolingSetpoint to value above the
MaxCoolSetpointLimit"
command: "writeAttribute"
attribute: "OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F01
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017
arguments:
- value: 4000
+ value: MaxCoolSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
@@ -88,36 +235,81 @@
attribute"
command: "writeAttribute"
attribute: "OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F01 && !TSTAT.S.F05
+ PICS: TSTAT.S.F01 && !TSTAT.S.F05 && !TSTAT.S.A0017
arguments:
value: 1600
- label:
- "Writes the CoolingSetpoint below the HeatingSetpoint when auto is
- enabled"
+ "Writes the limit of MinCoolSetpointLimit to OccupiedCoolingSetpoint
+ attribute"
command: "writeAttribute"
attribute: "OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F05
+ PICS: TSTAT.S.F01 && !TSTAT.S.F05 && TSTAT.S.A0017
arguments:
- value: 1600
- response:
- error: CONSTRAINT_ERROR
+ value: MinCoolSetpointLimit
+
+ #LowerLimit = Max(MinCoolSetpointLimit,(OccupiedHeatingSetpoint + MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(MinCoolSetpointLimit,
+ (OccupiedHeatingSetpoint + MinSetpointDeadBand)) to
+ OccupiedCoolingSetpoint attribute when Auto is enabled"
+ PICS: TSTAT.S.F05 && TSTAT.S.A0012 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional attribute so its not compulsory to get the expected outcome
+
+ ./chip-tool thermostat write occupied-cooling-setpoint 1600 1 1
+ On TH(chip-tool) verify that DUT sends a success response
+
+ [1658386056.238356][2906:2911] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658386056.238389][2906:2911] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658386056.238449][2906:2911] CHIP:EM: Sending Standalone Ack for MessageCounter:41416222 on exchange 5788i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
- label:
"Writes the limit of MaxCoolSetpointLimit to OccupiedCoolingSetpoint
attribute"
command: "writeAttribute"
attribute: "OccupiedCoolingSetpoint"
- PICS: TSTAT.S.F01
+ PICS: TSTAT.S.F01 && !TSTAT.S.A0017
arguments:
value: 3200
- label:
+ "Writes the limit of MaxCoolSetpointLimit to OccupiedCoolingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "OccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017
+ arguments:
+ value: MaxCoolSetpointLimit
+
+ #Using saved values when optional attributes are available
+ - label:
"Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies
that the value is within range"
command: "readAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016
+ response:
+ constraints:
+ type: int16s
+ minValue: MinHeatSetpointLimit
+ maxValue: MaxHeatSetpointLimit
+
+ #Using hard coded values when optional attributes are not available
+ - label:
+ "Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies
+ that the value is within range"
+ command: "readAttribute"
+ attribute: "OccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F00 && !TSTAT.S.A0015 && !TSTAT.S.A0016
response:
constraints:
type: int16s
@@ -147,20 +339,56 @@
MinHeatSetpointLimit"
command: "writeAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00
+ PICS: TSTAT.S.F00 && !TSTAT.S.A0015
arguments:
value: 600
response:
error: CONSTRAINT_ERROR
+ #MinHeatSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes OccupiedHeatingSetpoint to value below the
+ MinHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute -
+
+ ./chip-tool thermostat write occupied-heating-setpoint 5000 1 1
+
+ On TH(chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+ [1658388388.725344][3134:3139] CHIP:DMG: InteractionModelRevision = 1
+ [1658388388.725388][3134:3139] CHIP:DMG: }
+ [1658388388.725505][3134:3139] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658388388.725558][3134:3139] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658388388.725618][3134:3139] CHIP:EM: Sending Standalone Ack for MessageCounter:199663269 on exchange 29439i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes OccupiedHeatingSetpoint to value above the
+ MaxHeatSetpointLimit"
+ command: "writeAttribute"
+ attribute: "OccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F00 && !TSTAT.S.A0016
+ arguments:
+ value: 4010
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes OccupiedHeatingSetpoint to value above the
MaxHeatSetpointLimit"
command: "writeAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016
arguments:
- value: 4010
+ value: MaxHeatSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
@@ -169,25 +397,25 @@
attribute"
command: "writeAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00
+ PICS: TSTAT.S.F00 && !TSTAT.S.A0015
arguments:
value: 700
- label:
- "Reads it back again to confirm the successful write of
- OccupiedHeatingSetpoint attribute"
- command: "readAttribute"
+ "Writes the limit of MinHeatSetpointLimit to OccupiedHeatingSetpoint
+ attribute"
+ command: "writeAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00
- response:
- value: 700
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015
+ arguments:
+ value: MinHeatSetpointLimit
- label:
"Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint
attribute"
command: "writeAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F00 && !TSTAT.S.F05
+ PICS: TSTAT.S.F00 && !TSTAT.S.F05 && !TSTAT.S.A0016
arguments:
value: 3000
@@ -196,18 +424,72 @@
attribute"
command: "writeAttribute"
attribute: "OccupiedHeatingSetpoint"
- PICS: TSTAT.S.F05
+ PICS: TSTAT.S.F00 && !TSTAT.S.F05 && TSTAT.S.A0016
+ arguments:
+ value: MaxHeatSetpointLimit
+
+ - label:
+ "Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "OccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F05 && !TSTAT.S.A0015
arguments:
value: 3000
response:
error: CONSTRAINT_ERROR
+ #UpperLimit = Min(MaxHeatSetpointLimit,(OccupiedCoolingSetpoint - MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(MaxHeatSetpointLimit,
+ (OccupiedCoolingSetpoint - MinSetpointDeadBand)) to
+ OccupiedHeatingSetpoint attribute when Auto is enabled"
+ PICS:
+ TSTAT.S.F05 && TSTAT.S.A0011 && TSTAT.S.A0012 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ ./chip-tool thermostat write occupied-heating-setpoint 2200 1 1
+ On TH(chip-tool) verify that DUT sends a success response
+ [1661755950.285710][3540:3545] CHIP:DMG: StatusIB =
+ [1661755950.285739][3540:3545] CHIP:DMG: {
+ [1661755950.285769][3540:3545] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
+ [1661755950.285799][3540:3545] CHIP:DMG: },
+ [1661755950.285831][3540:3545] CHIP:DMG:
+ [1661755950.285855][3540:3545] CHIP:DMG: },
+
+ ./chip-tool thermostat read occupied-heating-setpoint 1 1
+
+ On TH(chip-tool) verify that the occupied heating setpoint attribute value which is provided in previous step
+ [1661756337.957444][3574:3579] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0201 Attribute 0x0000_0012 DataVersion: 1052267276
+ [1661756337.957573][3574:3579] CHIP:TOO: OccupiedHeatingSetpoint: 2000
+ [1661756337.957876][3574:3579] CHIP:EM: Sending Standalone Ack for MessageCounter:176529588 on exchange 9927i
+ [1661756337.958020][3574:3579] CHIP:IN: Prepared secure message 0xffff867cd978 to 0x0000000000000001 (1) of type 0x10 and p
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
- label:
"Reads UnoccupiedCoolingSetpoint attribute from Server DUT and
verifies that the value is within range"
command: "readAttribute"
attribute: "UnoccupiedCoolingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F01
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018
+ response:
+ constraints:
+ type: int16s
+ minValue: MinCoolSetpointLimit
+ maxValue: MaxCoolSetpointLimit
+
+ - label:
+ "Reads UnoccupiedCoolingSetpoint attribute from Server DUT and
+ verifies that the value is within range"
+ command: "readAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018
response:
constraints:
type: int16s
@@ -237,20 +519,51 @@
MinCoolSetpointLimit"
command: "writeAttribute"
attribute: "UnoccupiedCoolingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F01
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017
arguments:
value: 1002
response:
error: CONSTRAINT_ERROR
+ #MinCoolSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes UnoccupiedCoolingSetpoint to value below the
+ MinCoolSetpointLimit"
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0017 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute - If it is supported, then in TH(chip-tool) log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ ./chip-tool thermostat write unoccupied-cooling-setpoint 2200 1 1
+
+ https://github.com/project-chip/connectedhomeip/issues/15627
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes UnoccupiedCoolingSetpoint to value above the
+ MaxCoolSetpointLimit"
+ command: "writeAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0018
+ arguments:
+ value: 4010
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes UnoccupiedCoolingSetpoint to value above the
MaxCoolSetpointLimit"
command: "writeAttribute"
attribute: "UnoccupiedCoolingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F01
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0018
arguments:
- value: 4010
+ value: MaxCoolSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
@@ -259,25 +572,95 @@
attribute"
command: "writeAttribute"
attribute: "UnoccupiedCoolingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F01
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.F05
arguments:
- value: 1800
+ value: 1600
+
+ - label:
+ "Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017 && TSTAT.S.F05
+ arguments:
+ value: 1600
+ response:
+ error: CONSTRAINT_ERROR
+
+ - label:
+ "Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.F05
+ arguments:
+ value: MinCoolSetpointLimit
+
+ #LowerLimit = Max(MinCoolSetpointLimit,(UnoccupiedCoolingSetpoint + MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(MinCoolSetpointLimit,
+ (UnoccupiedCoolingSetpoint + MinSetpointDeadBand)) to
+ UnoccupiedCoolingSetpoint attribute"
+ PICS:
+ TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0013 && TSTAT.S.F05 &&
+ PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute - If it is supported, then in TH(chip-tool) log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ ./chip-tool thermostat read unoccupied-cooling-setpoint 1 1
+
+ Verify in TH(chip-tool) Log:
+
+ [1650451290.847810][5403:5408] CHIP:TOO: Response Failure: IM Error 0x00000586: General error: 0x86 (UNSUPPORTED_ATTRIBUTE)
+ [1650451290.847903][5403:5408] CHIP:EM: Sending Standalone Ack for MessageCounter:5212350 on exchange 30170i
+ https://github.com/project-chip/connectedhomeip/issues/15627
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
- label:
"Writes the limit of MaxCoolSetpointLimit to UnoccupiedCoolingSetpoint
attribute"
command: "writeAttribute"
attribute: "UnoccupiedCoolingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F01
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0018 && !TSTAT.S.F05
arguments:
- value: 3000
+ value: 3200
- label:
+ "Writes the limit of MaxCoolSetpointLimit to UnoccupiedCoolingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "UnoccupiedCoolingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.F05
+ arguments:
+ value: MaxCoolSetpointLimit
+
+ #Using saved values when optional attributes are available
+ - label:
"Reads UnoccupiedHeatingSetpoint attribute from Server DUT and
verifies that the value is within range"
command: "readAttribute"
attribute: "UnoccupiedHeatingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F00
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016
+ response:
+ constraints:
+ type: int16s
+ minValue: MinHeatSetpointLimit
+ maxValue: MaxHeatSetpointLimit
+
+ #Using hardcoded values when optional attributes are not available
+ - label:
+ "Reads UnoccupiedHeatingSetpoint attribute from Server DUT and
+ verifies that the value is within range"
+ command: "readAttribute"
+ attribute: "UnoccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0015 && !TSTAT.S.A0016
response:
constraints:
type: int16s
@@ -307,20 +690,55 @@
MinHeatSetpointLimit"
command: "writeAttribute"
attribute: "UnoccupiedHeatingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F00
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0015
arguments:
value: 500
response:
error: CONSTRAINT_ERROR
+ #MinHeatSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes UnoccupiedHeatingSetpoint to value below the
+ MinHeatSetpointLimit"
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0015 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute - If it is supported, then in TH(chip-tool) log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ ./chip-tool thermostat read unoccupied-heating-setpoint 1 1
+ As its an optional attribute, we are not getting expected result
+ [1658389018.789254][3201:3206] CHIP:DMG: SuppressResponse = true,
+ [1658389018.789288][3201:3206] CHIP:DMG: InteractionModelRevision = 1
+ [1658389018.789312][3201:3206] CHIP:DMG: }
+ [1658389018.789426][3201:3206] CHIP:TOO: Response Failure: IM Error 0x00000586: General error: 0x86 (UNSUPPORTED_ATTRIBUTE)
+ [1658389018.789511][3201:3206] CHIP:EM: Sending Standalone Ack for MessageCounter:175660806 on exchange 16788i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes UnoccupiedHeatingSetpoint to value above the
+ MaxHeatSetpointLimit"
+ command: "writeAttribute"
+ attribute: "UnoccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0016
+ arguments:
+ value: 4010
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes UnoccupiedHeatingSetpoint to value above the
MaxHeatSetpointLimit"
command: "writeAttribute"
attribute: "UnoccupiedHeatingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F00
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0016
arguments:
- value: 4010
+ value: MaxHeatSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
@@ -329,25 +747,96 @@
attribute"
command: "writeAttribute"
attribute: "UnoccupiedHeatingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F00
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0015
arguments:
- value: 1800
+ value: 700
+
+ - label:
+ "Writes the limit of MinHeatSetpointLimit to UnoccupiedHeatingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "UnoccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0015
+ arguments:
+ value: MinHeatSetpointLimit
- label:
"Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint
attribute"
command: "writeAttribute"
attribute: "UnoccupiedHeatingSetpoint"
- PICS: TSTAT.S.F02 && TSTAT.S.F00
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0016 && !TSTAT.S.F05
arguments:
value: 3000
- label:
+ "Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "UnoccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05
+ arguments:
+ value: MaxHeatSetpointLimit
+
+ - label:
+ "Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint
+ attribute"
+ command: "writeAttribute"
+ attribute: "UnoccupiedHeatingSetpoint"
+ PICS: TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0016 && TSTAT.S.F05
+ arguments:
+ value: 3000
+ response:
+ error: CONSTRAINT_ERROR
+
+ #UpperLimit = Min(MaxHeatSetpointLimit,(UnoccupiedCoolingSetpoint - MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(MaxHeatSetpointLimit,
+ (UnoccupiedCoolingSetpoint - MinSetpointDeadBand)) to
+ UnoccupiedHeatingSetpoint attribute when Auto is enabled."
+ PICS:
+ TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0013 && TSTAT.S.F05 &&
+ PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute - If it is supported, then in TH (chip-tool) log it will results in displaying the value, else it will display UNSUPPORTED_ATTRIBUTE
+
+ ./chip-tool thermostat read unoccupied-heating-setpoint 1 1
+ As its an optional attribute, we are not getting expected result
+ [1658389070.439643][3209:3214] CHIP:DMG:
+ [1658389070.439678][3209:3214] CHIP:DMG: SuppressResponse = true,
+ [1658389070.439715][3209:3214] CHIP:DMG: InteractionModelRevision = 1
+ [1658389070.439750][3209:3214] CHIP:DMG: }
+ [1658389070.439896][3209:3214] CHIP:TOO: Response Failure: IM Error 0x00000586: General error: 0x86 (UNSUPPORTED_ATTRIBUTE)
+ [1658389070.439997][3209:3214] CHIP:EM: Sending Standalone Ack for MessageCounter:26480890 on exchange 13280i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ #Using saved values when optional attributes are available
+ - label:
"Reads MinHeatSetpointLimit attribute from Server DUT and verifies
that the value is within range"
command: "readAttribute"
attribute: "MinHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0015
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016 && TSTAT.S.A0003
+ response:
+ constraints:
+ type: int16s
+ minValue: AbsMinHeatSetpointLimitValue
+ maxValue: MaxHeatSetpointLimit
+
+ #Using hard coded values when optional attributes are not available
+ - label:
+ "Reads MinHeatSetpointLimit attribute from Server DUT and verifies
+ that the value is within range"
+ command: "readAttribute"
+ attribute: "MinHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0016 && !TSTAT.S.A0003
response:
constraints:
type: int16s
@@ -386,9 +875,43 @@
AbsMinHeatSetpointLimit "
command: "writeAttribute"
attribute: "MinHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0015
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0003
arguments:
- value: 650
+ value: 100
+ response:
+ error: CONSTRAINT_ERROR
+
+ #AbsMinHeatSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes MinHeatSetpointLimit to value below the
+ AbsMinHeatSetpointLimit "
+ PICS:
+ TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0003 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ ./chip-tool thermostat write min-heat-setpoint-limit 300 1 1
+ On TH (chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+ [1658389492.560607][3266:3272] CHIP:DMG: InteractionModelRevision = 1
+ [1658389492.560644][3266:3272] CHIP:DMG: }
+ [1658389492.560749][3266:3272] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658389492.560915][3266:3272] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658389492.561002][3266:3272] CHIP:EM: Sending Standalone Ack for MessageCounter:252582472 on exchange 3434i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes MinHeatSetpointLimit to value above the
+ AbsMaxHeatSetpointLimit "
+ command: "writeAttribute"
+ attribute: "MinHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0016
+ arguments:
+ value: 4050
response:
error: CONSTRAINT_ERROR
@@ -397,9 +920,9 @@
AbsMaxHeatSetpointLimit "
command: "writeAttribute"
attribute: "MinHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0015
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016
arguments:
- value: 4050
+ value: MaxHeatSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
@@ -408,25 +931,93 @@
attribute"
command: "writeAttribute"
attribute: "MinHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0015
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0003
arguments:
value: 700
- label:
- "Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit
+ "Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit
attribute"
command: "writeAttribute"
attribute: "MinHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0003
+ arguments:
+ value: AbsMinHeatSetpointLimitValue
+
+ - label:
+ "Writes the limit of MaxHeatSetpointLimit to MinHeatSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MinHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05 && !TSTAT.S.A0016
arguments:
value: 3000
- label:
+ "Writes the limit of MaxHeatSetpointLimit to MinHeatSetpointimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MinHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05 && TSTAT.S.A0016
+ arguments:
+ value: MaxHeatSetpointLimit
+
+ #UpperLimit = Min(MaxHeatSetpointLimit,(MinCoolSetpointLimit - MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(MaxHeatSetpointLimit,
+ (MinCoolSetpointLimit - MinSetpointDeadBand)) to MinHeatSetpointLimit
+ attribute when Auto is enabled"
+ PICS:
+ TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.F05 && TSTAT.S.A0005 &&
+ PICS_SKIP_SAMPLE_APP
+ verification: |
+ ./chip-tool thermostat write min-heat-setpoint-limit 1000 1 1
+
+ On TH(chip-tool) verify that DUT sends a success response
+ [1658389641.734245][3279:3284] CHIP:DMG: Endpoint = 0x1,
+ [1658389641.734285][3279:3284] CHIP:DMG: Cluster = 0x201,
+ [1658389641.734326][3279:3284] CHIP:DMG: Attribute = 0x0000_0015,
+ [1658389641.734360][3279:3284] CHIP:DMG: }
+ [1658389641.734402][3279:3284] CHIP:DMG:
+ [1658389641.734438][3279:3284] CHIP:DMG: StatusIB =
+ [1658389641.734475][3279:3284] CHIP:DMG: {
+ [1658389641.734512][3279:3284] CHIP:DMG: status = 0x00 (SUCCESS),
+ [1658389641.734549][3279:3284] CHIP:DMG: },
+ [1658389641.734586][3279:3284] CHIP:DMG:
+ [1658389641.734617][3279:3284] CHIP:DMG: },
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ #Using saved values when optional attributes are available
+ - label:
"Reads MaxHeatSetpointLimit attribute from Server DUT and verifies
that the value is within range"
command: "readAttribute"
attribute: "MaxHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05
+ PICS:
+ TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && TSTAT.S.A0004 &&
+ TSTAT.S.A0016
+ response:
+ constraints:
+ type: int16s
+ minValue: MinHeatSetpointLimit
+ maxValue: AbsMaxHeatSetpointLimitValue
+
+ #Using hard coded values when optional attributes are not available
+ - label:
+ "Reads MaxHeatSetpointLimit attribute from Server DUT and verifies
+ that the value is within range"
+ command: "readAttribute"
+ attribute: "MaxHeatSetpointLimit"
+ PICS:
+ " TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && !TSTAT.S.A0004 &&
+ !TSTAT.S.A0016 "
response:
constraints:
type: int16s
@@ -476,47 +1067,159 @@
AbsMinHeatSetpointLimit "
command: "writeAttribute"
attribute: "MaxHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0016
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.A0015
arguments:
value: 500
response:
error: CONSTRAINT_ERROR
+ #MinHeatSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes MaxHeatSetpointLimit to value below the MinHeatSetpointLimit"
+ PICS:
+ TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.A0015 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute -
+
+ ./chip-tool thermostat write max-heat-setpoint-limit 7000 1 1
+
+ On TH(chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+
+ [1658389771.305508][3310:3315] CHIP:DMG: ],
+ [1658389771.305555][3310:3315] CHIP:DMG:
+ [1658389771.305594][3310:3315] CHIP:DMG: InteractionModelRevision = 1
+ [1658389771.305632][3310:3315] CHIP:DMG: }
+ [1658389771.305737][3310:3315] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658389771.305785][3310:3315] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658389771.305867][3310:3315] CHIP:EM: Sending Standalone Ack for MessageCounter:187660216 on exchange 59285i
+
+ ./chip-tool thermostat write max-heat-setpoint-limit 100 1 1
+ On TH(chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+ [1658389806.716013][3316:3321] CHIP:DMG:
+ [1658389806.716046][3316:3321] CHIP:DMG: StatusIB =
+ [1658389806.716084][3316:3321] CHIP:DMG: {
+ [1658389806.716121][3316:3321] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
+ [1658389806.716158][3316:3321] CHIP:DMG: },
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes MaxHeatSetpointLimit to value above the
+ AbsMaxHeatSetpointLimit "
+ command: "writeAttribute"
+ attribute: "MaxHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.A0004
+ arguments:
+ value: 4000
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes MaxHeatSetpointLimit to value above the
AbsMaxHeatSetpointLimit "
command: "writeAttribute"
attribute: "MaxHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0016
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.A0004
arguments:
- value: 4000
+ value: AbsMaxHeatSetpointLimitValue + 1000
response:
error: CONSTRAINT_ERROR
- label:
- "Writes the limit of AbsMinHeatSetpointLimit to MaxHeatSetpointLimit
+ "Writes the limit of MinHeatSetpointLimit to MaxHeatSetpointLimit
attribute"
command: "writeAttribute"
attribute: "MaxHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0016
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.A0015
arguments:
value: 700
- label:
+ "Writes the limit of MinHeatSetpointLimit to MaxHeatSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MaxHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.A0015
+ arguments:
+ value: MinHeatSetpointLimit
+
+ - label:
"Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit
attribute"
command: "writeAttribute"
attribute: "MaxHeatSetpointLimit"
- PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && !TSTAT.S.A0004
arguments:
value: 3000
- label:
+ "Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MaxHeatSetpointLimit"
+ PICS: TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && TSTAT.S.A0004
+ arguments:
+ value: AbsMaxHeatSetpointLimitValue
+
+ #UpperLimit = Min(AbsMaxHeatSetpointLimit,(MaxCoolSetpointLimit - MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(AbsMaxHeatSetpointLimit,
+ (MaxCoolSetpointLimit - MinSetpointDeadBand)) to MaxHeatSetpointLimit
+ attribute"
+ PICS:
+ TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.F05 && TSTAT.S.A0018 &&
+ PICS_SKIP_SAMPLE_APP
+ verification: |
+ ./chip-tool thermostat write max-heat-setpoint-limit 2000 1 1
+ On TH(chip-tool) verify that DUT sends a success response
+ [1658389911.809423][3333:3338] CHIP:DMG: Endpoint = 0x1,
+ [1658389911.809492][3333:3338] CHIP:DMG: Cluster = 0x201,
+ [1658389911.809562][3333:3338] CHIP:DMG: Attribute = 0x0000_0016,
+ [1658389911.809627][3333:3338] CHIP:DMG: }
+ [1658389911.809698][3333:3338] CHIP:DMG:
+ [1658389911.809761][3333:3338] CHIP:DMG: StatusIB =
+ [1658389911.809827][3333:3338] CHIP:DMG: {
+ [1658389911.809892][3333:3338] CHIP:DMG: status = 0x00 (SUCCESS),
+ [1658389911.809957][3333:3338] CHIP:DMG: },
+ [1658389911.809994][3333:3338] CHIP:DMG:
+ [1658389911.810021][3333:3338] CHIP:DMG: },
+ [1658389911.810051][3333:3338] CHIP:DMG:
+ [1658389911.810076][3333:3338] CHIP:DMG: ],
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ #Using saved values when optional attributes are available
+ - label:
"Reads MinCoolSetpointLimit attribute from Server DUT and verifies
that the value is within range"
command: "readAttribute"
attribute: "MinCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0017
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018 && TSTAT.S.A0005
+ response:
+ constraints:
+ type: int16s
+ minValue: AbsMinCoolSetpointLimit
+ maxValue: MaxCoolSetpointLimit
+
+ #Using hard coded values when optional attributes are not available
+ - label:
+ "Reads MinCoolSetpointLimit attribute from Server DUT and verifies
+ that the value is within range"
+ command: "readAttribute"
+ attribute: "MinCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0018 && !TSTAT.S.A0005
response:
constraints:
type: int16s
@@ -546,19 +1249,59 @@
AbsMinCoolSetpointLimit "
command: "writeAttribute"
attribute: "MinCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0017
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0005
arguments:
value: 1000
response:
error: CONSTRAINT_ERROR
+ #AbsMinCoolSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes MinCoolSetpointLimit to value below the
+ AbsMinCoolSetpointLimit"
+ PICS:
+ TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0005 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional Attribute -
+
+
+ ./chip-tool thermostat write max-heat-setpoint-limit 9000 1 1
+ On TH(chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+ [1658390040.444407][3343:3348] CHIP:DMG:
+ [1658390040.444443][3343:3348] CHIP:DMG: },
+ [1658390040.444483][3343:3348] CHIP:DMG:
+ [1658390040.444515][3343:3348] CHIP:DMG: ],
+ [1658390040.444553][3343:3348] CHIP:DMG:
+ [1658390040.444585][3343:3348] CHIP:DMG: InteractionModelRevision = 1
+ [1658390040.444616][3343:3348] CHIP:DMG: }
+ [1658390040.444703][3343:3348] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658390040.444744][3343:3348] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658390040.444843][3343:3348] CHIP:EM: Sending Standalone Ack for MessageCounter:137523063 on exchange 39419i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+ - label:
+ "Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit "
+ command: "writeAttribute"
+ attribute: "MinCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0018
+ arguments:
+ value: 4000
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit "
command: "writeAttribute"
attribute: "MinCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0017
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018
arguments:
- value: 4000
+ value: MaxCoolSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
@@ -567,34 +1310,84 @@
attribute"
command: "writeAttribute"
attribute: "MinCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0017
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0005 && !TSTAT.S.F05
arguments:
value: 1600
- label:
- "Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit
- attribute"
- command: "writeAttribute"
- attribute: "MinCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0017
- arguments:
- value: 3200
-
- - label:
"Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit
attribute"
command: "writeAttribute"
attribute: "MinCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0017
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0005 && !TSTAT.S.F05
arguments:
- value: 1600
+ value: AbsMinCoolSetpointLimit
+ #LowerLimit = Max(AbsMinCoolSetpointLimit,(MinHeatSetpointLimit + MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(AbsMinCoolSetpointLimit,
+ (MinHeatSetpointLimit + MinSetpointDeadBand)) to MinCoolSetpointLimit
+ attribute"
+ PICS:
+ TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0015 && TSTAT.S.F05 &&
+ PICS_SKIP_SAMPLE_APP
+ verification: |
+ ./chip-tool thermostat write max-heat-setpoint-limit 2000 1 1
+
+ Verify in TH(chip-tool) Log:
+ [1658390406.512865][3384:3389] CHIP:DMG:
+ [1658390406.512895][3384:3389] CHIP:DMG: StatusIB =
+ [1658390406.512927][3384:3389] CHIP:DMG: {
+ [1658390406.512958][3384:3389] CHIP:DMG: status = 0x00 (SUCCESS),
+ [1658390406.512992][3384:3389] CHIP:DMG: },
+ [1658390406.513023][3384:3389] CHIP:DMG:
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MinCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0018
+ arguments:
+ value: 3200
+
+ - label:
+ "Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MinCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018
+ arguments:
+ value: MaxCoolSetpointLimit
+
+ #Using saved values when optional attributes are available
- label:
"Reads MaxCoolSetpointLimit attribute from Server DUT and verifies
that the value is within range"
command: "readAttribute"
attribute: "MaxCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0018
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0017 && TSTAT.S.A0006
+ response:
+ constraints:
+ type: int16s
+ minValue: MinCoolSetpointLimit
+ maxValue: AbsMaxCoolSetpointLimit
+
+ #Using hard coded values when optional attributes are not available
+ - label:
+ "Reads MaxCoolSetpointLimit attribute from Server DUT and verifies
+ that the value is within range"
+ command: "readAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017 && !TSTAT.S.A0006
response:
constraints:
type: int16s
@@ -624,40 +1417,131 @@
AbsMinCoolSetpointLimit "
command: "writeAttribute"
attribute: "MaxCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0018
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017
arguments:
value: 1000
response:
error: CONSTRAINT_ERROR
+ #AbsMinCoolSetpointLimit might be negative if not checked before decrement
+ - label:
+ "Writes MaxCoolSetpointLimit to value below the
+ AbsMinCoolSetpointLimit"
+ PICS:
+ TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0017 && PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional attribute so its not compulsory to get the expected outcome
+
+ ./chip-tool thermostat write max-cool-setpoint-limit 9100 1 1
+ On TH(chip-tool)(chip-tool) verify that DUT sends a CONSTRAINT_ERROR (0x87)
+ [1658396137.669807][3677:3682] CHIP:DMG:
+ [1658396137.669832][3677:3682] CHIP:DMG: InteractionModelRevision = 1
+ [1658396137.669857][3677:3682] CHIP:DMG: }
+ [1658396137.669929][3677:3682] CHIP:DMG: WriteClient moving to [AwaitingDe]
+ [1658396137.669964][3677:3682] CHIP:TOO: Response Failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
+ [1658396137.670019][3677:3682] CHIP:EM: Sending Standalone Ack for MessageCounter:77698449 on exchange 47844i
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit "
+ command: "writeAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0006
+ arguments:
+ value: 4000
+ response:
+ error: CONSTRAINT_ERROR
+
- label:
"Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit "
command: "writeAttribute"
attribute: "MaxCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0018
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0006
arguments:
- value: 4000
+ value: AbsMaxCoolSetpointLimit + 1000
response:
error: CONSTRAINT_ERROR
- label:
- "Writes the limit of AbsMinCoolSetpointLimit to MaxCoolSetpointLimit
+ "Writes the limit of MinCoolSetpointLimit to MaxCoolSetpointLimit
attribute"
command: "writeAttribute"
attribute: "MaxCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0018
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017 && !TSTAT.S.F05
arguments:
value: 1600
- label:
- "Writes the limit of MaxCoolSetpointLimit to MaxCoolSetpointLimit
+ "Writes the limit of MinCoolSetpointLimit to MaxCoolSetpointLimit
attribute"
command: "writeAttribute"
attribute: "MaxCoolSetpointLimit"
- PICS: TSTAT.S.F01 && TSTAT.S.A0018
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017 && TSTAT.S.F05
+ arguments:
+ value: 1600
+ response:
+ error: CONSTRAINT_ERROR
+
+ - label:
+ "Writes the limit of MinCoolSetpointLimit to MaxCoolSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0017 && !TSTAT.S.F05
+ arguments:
+ value: MinCoolSetpointLimit
+
+ #LowerLimit = Max(MinCoolSetpointLimit,(MaxHeatSetpointLimit + MinSetpointDeadBand)) not possible in YAML
+ - label:
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(MinCoolSetpointLimit,
+ (MaxHeatSetpointLimit + MinSetpointDeadBand)) to MaxCoolSetpointLimit
+ attribute"
+ PICS:
+ TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0016 && TSTAT.S.F05 &&
+ PICS_SKIP_SAMPLE_APP
+ verification: |
+ Optional attribute so its not compulsory to get the expected outcome
+
+ ./chip-tool thermostat write max-cool-setpoint-limit 1600 1 1
+ On TH verify that DUT sends a success response
+ [1661766260.648041][10448:10453] CHIP:DMG: StatusIB =
+ [1661766260.648070][10448:10453] CHIP:DMG: {
+ [1661766260.648100][10448:10453] CHIP:DMG: status = 0x87 (CONSTRAINT_ERROR),
+ [1661766260.648127][10448:10453] CHIP:DMG: },
+ cluster: "LogCommands"
+ command: "UserPrompt"
+ arguments:
+ values:
+ - name: "message"
+ value: "Please enter 'y' after success"
+ - name: "expectedValue"
+ value: "y"
+
+ - label:
+ "Writes the limit of AbsMaxCoolSetpointLimit to MaxCoolSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0006
arguments:
value: 3200
+ - label:
+ "Writes the limit of AbsMaxCoolSetpointLimit to MaxCoolSetpointLimit
+ attribute"
+ command: "writeAttribute"
+ attribute: "MaxCoolSetpointLimit"
+ PICS: TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0006
+ arguments:
+ value: AbsMaxCoolSetpointLimit
+
- label: "Writes (sets back) default value of MinHeatSetpointLimit"
command: "writeAttribute"
attribute: "MinHeatSetpointLimit"
diff --git a/zzz_generated/chip-tool/zap-generated/test/Commands.h b/zzz_generated/chip-tool/zap-generated/test/Commands.h
index 2ea5356..ef88de3 100644
--- a/zzz_generated/chip-tool/zap-generated/test/Commands.h
+++ b/zzz_generated/chip-tool/zap-generated/test/Commands.h
@@ -2218,12 +2218,7 @@
break;
case 2:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::DecodableList<chip::ClusterId> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "list", "list"));
- VerifyOrReturn(CheckConstraintExcludes("value", value, 31UL));
- }
+ shouldContinue = true;
break;
default:
LogErrorOnFailure(ContinueOnChipMainThread(CHIP_ERROR_INVALID_ARGUMENT));
@@ -2254,8 +2249,14 @@
}
case 2: {
LogStep(2, "TH1 reads DUT Descriptor cluster ServerList attribute from every Endpoint except 0");
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Descriptor::Id, Descriptor::Attributes::ServerList::Id, true,
- chip::NullOptional);
+ VerifyOrDo(!ShouldSkip("PICS_USER_PROMPT"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message =
+ chip::Span<const char>("Factory Reset the DUT and enter 'y' after successgarbage: not in length on purpose", 49);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
}
}
return CHIP_NO_ERROR;
@@ -22593,7 +22594,7 @@
{
public:
Test_TC_AUDIOOUTPUT_1_8Suite(CredentialIssuerCommands * credsIssuerConfig) :
- TestCommand("Test_TC_AUDIOOUTPUT_1_8", 7, credsIssuerConfig)
+ TestCommand("Test_TC_AUDIOOUTPUT_1_8", 6, credsIssuerConfig)
{
AddArgument("nodeId", 0, UINT64_MAX, &mNodeId);
AddArgument("cluster", &mCluster);
@@ -22680,20 +22681,6 @@
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
{
auto iter_0 = value.begin();
- VerifyOrReturn(CheckNextListItemDecodes<decltype(value)>("generatedCommandList", iter_0, 0));
- VerifyOrReturn(CheckValue("generatedCommandList[0]", iter_0.GetValue(), 1UL));
- VerifyOrReturn(CheckNoMoreListItems<decltype(value)>("generatedCommandList", iter_0, 1));
- }
- VerifyOrReturn(CheckConstraintType("value", "list", "list"));
- }
- break;
- case 6:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::DecodableList<chip::CommandId> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- {
- auto iter_0 = value.begin();
VerifyOrReturn(CheckNoMoreListItems<decltype(value)>("generatedCommandList", iter_0, 0));
}
VerifyOrReturn(CheckConstraintType("value", "list", "list"));
@@ -22743,13 +22730,6 @@
}
case 5: {
LogStep(5, "Read the global attribute: GeneratedCommandList");
- VerifyOrDo(!ShouldSkip("AUDIOOUTPUT.S.NU"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), AudioOutput::Id, AudioOutput::Attributes::GeneratedCommandList::Id,
- true, chip::NullOptional);
- }
- case 6: {
- LogStep(6, "Read the global attribute: GeneratedCommandList");
- VerifyOrDo(!ShouldSkip(" !AUDIOOUTPUT.S.NU "), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), AudioOutput::Id, AudioOutput::Attributes::GeneratedCommandList::Id,
true, chip::NullOptional);
}
@@ -24302,11 +24282,7 @@
break;
case 2:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::Clusters::ApplicationBasic::ApplicationStatusEnum value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("status", value, 0U));
- }
+ shouldContinue = true;
break;
default:
LogErrorOnFailure(ContinueOnChipMainThread(CHIP_ERROR_INVALID_ARGUMENT));
@@ -24347,8 +24323,13 @@
}
case 2: {
LogStep(2, "Reads the Status attribute");
- return ReadAttribute(kIdentityAlpha, GetEndpoint(3), ApplicationBasic::Id, ApplicationBasic::Attributes::Status::Id,
- true, chip::NullOptional);
+ VerifyOrDo(!ShouldSkip("PICS_USER_PROMPT"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
}
}
return CHIP_NO_ERROR;
@@ -33640,7 +33621,7 @@
class Test_TC_TSTAT_2_1Suite : public TestCommand
{
public:
- Test_TC_TSTAT_2_1Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_TSTAT_2_1", 50, credsIssuerConfig)
+ Test_TC_TSTAT_2_1Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_TSTAT_2_1", 68, credsIssuerConfig)
{
AddArgument("nodeId", 0, UINT64_MAX, &mNodeId);
AddArgument("cluster", &mCluster);
@@ -33661,6 +33642,16 @@
chip::Optional<chip::EndpointId> mEndpoint;
chip::Optional<uint16_t> mTimeout;
+ int16_t AbsMinCoolSetpointLimitStep5;
+ int8_t MinSetpointDeadBand;
+ int16_t AbsMaxCoolSetpointLimitStep6;
+ int16_t MinCoolSetpointLimit;
+ int16_t MaxCoolSetpointLimit;
+ int16_t OccupiedCoolingSetpoint;
+ int16_t AbsMinHeat;
+ int16_t AbsMaxHeat;
+ int16_t UnoccupiedCoolingSetpoint;
+
chip::EndpointId GetEndpoint(chip::EndpointId endpoint) { return mEndpoint.HasValue() ? mEndpoint.Value() : endpoint; }
//
@@ -33680,16 +33671,78 @@
case 1:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- chip::app::DataModel::Nullable<int16_t> value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
+ AbsMinCoolSetpointLimitStep5 = value;
}
break;
case 2:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
+ int8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MinSetpointDeadBand = value;
+ }
+ break;
+ case 3:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMaxCoolSetpointLimitStep6 = value;
+ }
+ break;
+ case 4:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MinCoolSetpointLimit = value;
+ }
+ break;
+ case 5:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MaxCoolSetpointLimit = value;
+ }
+ break;
+ case 6:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ OccupiedCoolingSetpoint = value;
+ }
+ break;
+ case 7:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMinHeat = value;
+ }
+ break;
+ case 8:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMaxHeat = value;
+ }
+ break;
+ case 9:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ UnoccupiedCoolingSetpoint = value;
+ }
+ break;
+ case 10:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
chip::app::DataModel::Nullable<int16_t> value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
@@ -33697,7 +33750,17 @@
VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
}
break;
- case 3:
+ case 11:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<int16_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
+ }
+ break;
+ case 12:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
uint8_t value;
@@ -33707,104 +33770,13 @@
VerifyOrReturn(CheckConstraintMaxValue("value", value, 1U));
}
break;
- case 4:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
- }
- break;
- case 5:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
- }
- break;
- case 6:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
- }
- break;
- case 7:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
- }
- break;
- case 8:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- uint8_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 100U));
- }
- break;
- case 9:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- uint8_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 100U));
- }
- break;
- case 10:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- uint8_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "bitmap8", "bitmap8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 63U));
- }
- break;
- case 11:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int8_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8s", "int8s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 25));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, -25));
- }
- break;
- case 12:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
- }
- break;
case 13:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, AbsMinCoolSetpointLimitStep5 - MinSetpointDeadBand));
}
break;
case 14:
@@ -33813,8 +33785,7 @@
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 1575));
}
break;
case 15:
@@ -33823,8 +33794,8 @@
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
}
break;
case 16:
@@ -33833,8 +33804,8 @@
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
}
break;
case 17:
@@ -33860,21 +33831,21 @@
case 19:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- int16_t value;
+ uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 100U));
}
break;
case 20:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- int8_t value;
+ uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8s", "int8s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 25));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 100U));
}
break;
case 21:
@@ -33884,92 +33855,182 @@
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "bitmap8", "bitmap8"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 7U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 63U));
}
break;
case 22:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- chip::app::Clusters::Thermostat::ThermostatControlSequence value;
+ int8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 5U));
+ VerifyOrReturn(CheckConstraintType("value", "int8s", "int8s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, -25));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 25));
}
break;
case 23:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 9U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinCoolSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxCoolSetpointLimit));
}
break;
case 24:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 9U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
}
break;
case 25:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 6U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, AbsMinCoolSetpointLimitStep5));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, OccupiedCoolingSetpoint - MinSetpointDeadBand));
}
break;
case 26:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
}
break;
case 27:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, AbsMinHeat));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, AbsMaxHeat));
}
break;
case 28:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 1U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
}
break;
case 29:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- chip::app::DataModel::Nullable<uint16_t> value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16u", "int16u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 1440U));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, UnoccupiedCoolingSetpoint - MinSetpointDeadBand));
}
break;
case 30:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ }
+ break;
+ case 31:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MinCoolSetpointLimit - MinSetpointDeadBand));
+ }
+ break;
+ case 32:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ }
+ break;
+ case 33:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ }
+ break;
+ case 34:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxCoolSetpointLimit - MinSetpointDeadBand));
+ }
+ break;
+ case 35:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, AbsMinCoolSetpointLimitStep5));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxCoolSetpointLimit));
+ }
+ break;
+ case 36:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
+ }
+ break;
+ case 37:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinCoolSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, AbsMaxCoolSetpointLimitStep6));
+ }
+ break;
+ case 38:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8s", "int8s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 25));
+ }
+ break;
+ case 39:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "bitmap8", "bitmap8"));
@@ -33977,102 +34038,14 @@
VerifyOrReturn(CheckConstraintMaxValue("value", value, 7U));
}
break;
- case 31:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- uint16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "bitmap16", "bitmap16"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 127U));
- }
- break;
- case 32:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- uint8_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 2U));
- }
- break;
- case 33:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::Nullable<int16_t> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
- }
- break;
- case 34:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- uint32_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "utc", "utc"));
- }
- break;
- case 35:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::Nullable<uint8_t> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
- }
- break;
- case 36:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::Nullable<uint8_t> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
- }
- break;
- case 37:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::Nullable<uint8_t> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
- }
- break;
- case 38:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::Nullable<uint8_t> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
- }
- break;
- case 39:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::DataModel::Nullable<uint8_t> value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
- }
- break;
case 40:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- chip::app::DataModel::Nullable<uint8_t> value;
+ chip::app::Clusters::Thermostat::ThermostatControlSequence value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 5U));
}
break;
case 41:
@@ -34080,9 +34053,9 @@
{
uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 9U));
}
break;
case 42:
@@ -34092,17 +34065,17 @@
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 4U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 9U));
}
break;
case 43:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint16_t value;
+ uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16u", "int16u"));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 65535U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 6U));
}
break;
case 44:
@@ -34110,9 +34083,9 @@
{
uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
}
break;
case 45:
@@ -34120,32 +34093,64 @@
{
uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
}
break;
case 46:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint32_t value;
+ uint8_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "bitmap32", "bitmap32"));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 1U));
}
break;
case 47:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- uint8_t value;
+ chip::app::DataModel::Nullable<uint16_t> value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 1U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 5U));
+ VerifyOrReturn(CheckConstraintType("value", "int16u", "int16u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 1440U));
}
break;
case 48:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "bitmap8", "bitmap8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 7U));
+ }
+ break;
+ case 49:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "bitmap16", "bitmap16"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 127U));
+ }
+ break;
+ case 50:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 2U));
+ }
+ break;
+ case 51:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
chip::app::DataModel::Nullable<int16_t> value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
@@ -34153,7 +34158,153 @@
VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
}
break;
- case 49:
+ case 52:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint32_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "utc", "utc"));
+ }
+ break;
+ case 53:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<uint8_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 54:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<uint8_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 55:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<uint8_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 56:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<uint8_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 57:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<uint8_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 58:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<uint8_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 59:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8u", "int8u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 255U));
+ }
+ break;
+ case 60:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 4U));
+ }
+ break;
+ case 61:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16u", "int16u"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 65535U));
+ }
+ break;
+ case 62:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3U));
+ }
+ break;
+ case 63:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3U));
+ }
+ break;
+ case 64:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint32_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "bitmap32", "bitmap32"));
+ }
+ break;
+ case 65:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ uint8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 1U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 5U));
+ }
+ break;
+ case 66:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::DataModel::Nullable<int16_t> value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, -27315));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 32767));
+ }
+ break;
+ case 67:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
uint8_t value;
@@ -34185,292 +34336,412 @@
return WaitForCommissionee(kIdentityAlpha, value);
}
case 1: {
- LogStep(1, "Reads mandatory attributes from DUT: LocalTemperature");
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::LocalTemperature::Id, true,
- chip::NullOptional);
- }
- case 2: {
- LogStep(2, "Read OutdoorTemperature attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0001"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::OutdoorTemperature::Id,
- true, chip::NullOptional);
- }
- case 3: {
- LogStep(3, "Read Occupancy attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::Occupancy::Id, true,
- chip::NullOptional);
- }
- case 4: {
- LogStep(4, "Reads mandatory attributes from DUT: AbsMinHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0003"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::AbsMinHeatSetpointLimit::Id, true, chip::NullOptional);
- }
- case 5: {
- LogStep(5, "Reads mandatory attributes from DUT: AbsMaxHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0004"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::AbsMaxHeatSetpointLimit::Id, true, chip::NullOptional);
- }
- case 6: {
- LogStep(6, "Reads optional attributes from DUT: AbsMinCoolSetpointLimit");
+ LogStep(1, "Saving value for comparision in step 5 read AbsMinCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0005"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::AbsMinCoolSetpointLimit::Id, true, chip::NullOptional);
}
- case 7: {
- LogStep(7, "Reads optional attributes from DUT: AbsMaxCoolSetpointLimit");
+ case 2: {
+ LogStep(2, "Saving value for comparision in step 5 read attribute MinSetpointDeadBand attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0019"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
+ true, chip::NullOptional);
+ }
+ case 3: {
+ LogStep(3, "Saving value for comparision in step 6 read AbsMaxCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0006"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::AbsMaxCoolSetpointLimit::Id, true, chip::NullOptional);
}
- case 8: {
- LogStep(8, "Read PICoolingDemand attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0007"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::PICoolingDemand::Id, true,
- chip::NullOptional);
- }
- case 9: {
- LogStep(9, "Read PIHeatingDemand attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0008"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::PIHeatingDemand::Id, true,
- chip::NullOptional);
- }
- case 10: {
- LogStep(10, "Read HVACSystemTypeConfiguration attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0009"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::HVACSystemTypeConfiguration::Id, true, chip::NullOptional);
- }
- case 11: {
- LogStep(11, "Read LocalTemperatureCalibration attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0010"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::LocalTemperatureCalibration::Id, true, chip::NullOptional);
- }
- case 12: {
- LogStep(12, "Reads optional attributes from DUT: OccupiedCoolingSetpoint");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
- }
- case 13: {
- LogStep(13, "Reads mandatory attributes from DUT: OccupiedHeatingSetpoint");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
- }
- case 14: {
- LogStep(14, "Read UnoccupiedCoolingSetpoint attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
- }
- case 15: {
- LogStep(15, "Read UnoccupiedHeatingSetpoint attribute from the DUT");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, true, chip::NullOptional);
- }
- case 16: {
- LogStep(16, "Reads attribute from DUT: MinHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
- true, chip::NullOptional);
- }
- case 17: {
- LogStep(17, "Reads attribute from DUT: MaxHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
- true, chip::NullOptional);
- }
- case 18: {
- LogStep(18, "Reads optional attributes from DUT: MinCoolSetpointLimit");
+ case 4: {
+ LogStep(4, "Saving value for comparision in step 17 read MinCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
true, chip::NullOptional);
}
- case 19: {
- LogStep(19, "Reads optional attributes from DUT: MaxCoolSetpointLimit");
+ case 5: {
+ LogStep(5, "Saving value for comparision in step 17 read MaxCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
true, chip::NullOptional);
}
+ case 6: {
+ LogStep(6, "Saving value for comparision in step 13 read attribute OccupiedCoolingSetpoint");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 7: {
+ LogStep(7, "Saving value for comparision in step 15 read attribute AbsMinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0003"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 8: {
+ LogStep(8, "Saving value for comparision in step 15 read attribute AbsMaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0004"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMaxHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 9: {
+ LogStep(9, "Saving value for comparision in step 16 read UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0013"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 10: {
+ LogStep(10, "Reads mandatory attributes from DUT: LocalTemperature");
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::LocalTemperature::Id, true,
+ chip::NullOptional);
+ }
+ case 11: {
+ LogStep(11, "Read OutdoorTemperature attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0001"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::OutdoorTemperature::Id,
+ true, chip::NullOptional);
+ }
+ case 12: {
+ LogStep(12, "Read Occupancy attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::Occupancy::Id, true,
+ chip::NullOptional);
+ }
+ case 13: {
+ LogStep(13, "Read attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 feature is supported");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0003 && TSTAT.S.A0005 && TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 14: {
+ LogStep(14, "Read attribute AbsMinHeatSetpointLimit if TSTAT.S.F05 feature is supported");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0003 && !TSTAT.S.A0005 && TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 15: {
+ LogStep(15, "Read attribute AbsMinHeatSetpointLimit from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0003 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 16: {
+ LogStep(16, "Reads mandatory attributes from DUT: AbsMaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0004"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMaxHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 17: {
+ LogStep(17, "Read attribute AbsMinCoolSetpointLimit from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0005"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinCoolSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 18: {
+ LogStep(18, "Read attribute AbsMaxCoolSetpointLimit from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0006"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMaxCoolSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 19: {
+ LogStep(19, "Read PICoolingDemand attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0007"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::PICoolingDemand::Id, true,
+ chip::NullOptional);
+ }
case 20: {
- LogStep(20, "Reads optional attributes from DUT: MinSetpointDeadBand");
+ LogStep(20, "Read PIHeatingDemand attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0008"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::PIHeatingDemand::Id, true,
+ chip::NullOptional);
+ }
+ case 21: {
+ LogStep(21, "Read HVACSystemTypeConfiguration attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0009"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::HVACSystemTypeConfiguration::Id, true, chip::NullOptional);
+ }
+ case 22: {
+ LogStep(22, "Read LocalTemperatureCalibration attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0010"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::LocalTemperatureCalibration::Id, true, chip::NullOptional);
+ }
+ case 23: {
+ LogStep(23, "Read attribute OccupiedCoolingSetpoint from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 24: {
+ LogStep(24, "Read attribute OccupiedCoolingSetpoint from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 25: {
+ LogStep(25, "Read attribute OccupiedHeatingSetpoint if TSTAT.S.F05 feature is supported");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 26: {
+ LogStep(26, "Read attribute OccupiedHeatingSetpoint from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 27: {
+ LogStep(27, "Read UnoccupiedCoolingSetpoint attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.A0013"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 28: {
+ LogStep(28, "Read UnoccupiedCoolingSetpoint attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.F02 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 29: {
+ LogStep(29, "Read UnoccupiedHeatingSetpoint attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.F02 && TSTAT.S.F05 && TSTAT.S.A0013"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 30: {
+ LogStep(30, "Read UnoccupiedHeatingSetpoint attribute from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.F02 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 31: {
+ LogStep(31, "Reads attribute from DUT: MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0015 && TSTAT.S.F05 && TSTAT.S.A0017"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 32: {
+ LogStep(32, "Read attribute MinHeatSetpointLimit from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0015 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 33: {
+ LogStep(33, "Read attribute MaxHeatSetpointLimit from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0016 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 34: {
+ LogStep(34, "Reads attribute from DUT: MaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0016 && TSTAT.S.F05 && TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 35: {
+ LogStep(35, "Read attribute MinCoolSetpointLimit from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0017 && TSTAT.S.A0018 && TSTAT.S.A0005"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 36: {
+ LogStep(36, "Read attribute MinCoolSetpointLimit from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0017 && !TSTAT.S.A0018 && !TSTAT.S.A0005"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 37: {
+ LogStep(37, "Read attribute MaxCoolSetpointLimit from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0018 && TSTAT.S.A0006 && TSTAT.S.A0017"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 38: {
+ LogStep(38, "Read attribute MinSetpointDeadBand from DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
true, chip::NullOptional);
}
- case 21: {
- LogStep(21, "Read RemoteSensing attribute from the DUT");
+ case 39: {
+ LogStep(39, "Read RemoteSensing attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A001a"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::RemoteSensing::Id, true,
chip::NullOptional);
}
- case 22: {
- LogStep(22, "Reads mandatory attributes from DUT: ControlSequenceOfOperation");
+ case 40: {
+ LogStep(40, "Read attribute ControlSequenceOfOperation from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A001b"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::ControlSequenceOfOperation::Id, true, chip::NullOptional);
}
- case 23: {
- LogStep(23, "Reads mandatory attributes from DUT: SystemMode");
+ case 41: {
+ LogStep(41, "Read attribute SystemMode from DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A001c"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::SystemMode::Id, true,
chip::NullOptional);
}
- case 24: {
- LogStep(24, "Read ThermostatRunningMode attribute from the DUT");
+ case 42: {
+ LogStep(42, "Read ThermostatRunningMode attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A001e"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ThermostatRunningMode::Id,
true, chip::NullOptional);
}
- case 25: {
- LogStep(25, "Reads constraints of optional attributes from DUT: StartOfWeek");
+ case 43: {
+ LogStep(43, "Reads constraints of optional attributes from DUT: StartOfWeek");
VerifyOrDo(!ShouldSkip("TSTAT.S.F03"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::StartOfWeek::Id, true,
chip::NullOptional);
}
- case 26: {
- LogStep(26, "Reads optional attributes from DUT: NumberOfWeeklyTransitions");
+ case 44: {
+ LogStep(44, "Reads optional attributes from DUT: NumberOfWeeklyTransitions");
VerifyOrDo(!ShouldSkip("TSTAT.S.F03"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::NumberOfWeeklyTransitions::Id, true, chip::NullOptional);
}
- case 27: {
- LogStep(27, "Reads optional attributes from DUT: NumberOfDailyTransitions");
+ case 45: {
+ LogStep(45, "Reads optional attributes from DUT: NumberOfDailyTransitions");
VerifyOrDo(!ShouldSkip("TSTAT.S.F03"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::NumberOfDailyTransitions::Id, true, chip::NullOptional);
}
- case 28: {
- LogStep(28, "Read TemperatureSetpointHold attribute from the DUT");
+ case 46: {
+ LogStep(46, "Read TemperatureSetpointHold attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0023"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::TemperatureSetpointHold::Id, true, chip::NullOptional);
}
- case 29: {
- LogStep(29, "Read TemperatureSetpointHoldDuration attribute from the DUT");
+ case 47: {
+ LogStep(47, "Read TemperatureSetpointHoldDuration attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0024"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::TemperatureSetpointHoldDuration::Id, true, chip::NullOptional);
}
- case 30: {
- LogStep(30, "Read ThermostatProgrammingOperationMode attribute from the DUT");
+ case 48: {
+ LogStep(48, "Read ThermostatProgrammingOperationMode attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0025"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::ThermostatProgrammingOperationMode::Id, true, chip::NullOptional);
}
- case 31: {
- LogStep(31, "Read ThermostatRunningState attribute from the DUT");
+ case 49: {
+ LogStep(49, "Read ThermostatRunningState attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0029"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ThermostatRunningState::Id,
true, chip::NullOptional);
}
- case 32: {
- LogStep(32, "Read SetpointChangeSource attribute from the DUT");
+ case 50: {
+ LogStep(50, "Read SetpointChangeSource attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0030"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::SetpointChangeSource::Id,
true, chip::NullOptional);
}
- case 33: {
- LogStep(33, "Read SetpointChangeAmount attribute from the DUT");
+ case 51: {
+ LogStep(51, "Read SetpointChangeAmount attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0031"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::SetpointChangeAmount::Id,
true, chip::NullOptional);
}
- case 34: {
- LogStep(34, "Read SetpointChangeSourceTimestamp attribute from the DUT");
+ case 52: {
+ LogStep(52, "Read SetpointChangeSourceTimestamp attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0032"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::SetpointChangeSourceTimestamp::Id, true, chip::NullOptional);
}
- case 35: {
- LogStep(35, "Read OccupiedSetback attribute from the DUT");
+ case 53: {
+ LogStep(53, "Read OccupiedSetback attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::OccupiedSetback::Id, true,
chip::NullOptional);
}
- case 36: {
- LogStep(36, "Read OccupiedSetbackMin attribute from the DUT");
+ case 54: {
+ LogStep(54, "Read OccupiedSetbackMin attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::OccupiedSetbackMin::Id,
true, chip::NullOptional);
}
- case 37: {
- LogStep(37, "Read OccupiedSetbackMax attribute from the DUT");
+ case 55: {
+ LogStep(55, "Read OccupiedSetbackMax attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::OccupiedSetbackMax::Id,
true, chip::NullOptional);
}
- case 38: {
- LogStep(38, "Read UnoccupiedSetback attribute from the DUT");
+ case 56: {
+ LogStep(56, "Read UnoccupiedSetback attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F04"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::UnoccupiedSetback::Id,
true, chip::NullOptional);
}
- case 39: {
- LogStep(39, "Read UnoccupiedSetbackMin attribute from the DUT");
+ case 57: {
+ LogStep(57, "Read UnoccupiedSetbackMin attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F04"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::UnoccupiedSetbackMin::Id,
true, chip::NullOptional);
}
- case 40: {
- LogStep(40, "Read UnoccupiedSetbackMax attribute from the DUT");
+ case 58: {
+ LogStep(58, "Read UnoccupiedSetbackMax attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F04"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::UnoccupiedSetbackMax::Id,
true, chip::NullOptional);
}
- case 41: {
- LogStep(41, "Read EmergencyHeatDelta attribute from the DUT");
+ case 59: {
+ LogStep(59, "Read EmergencyHeatDelta attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A003a"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::EmergencyHeatDelta::Id,
true, chip::NullOptional);
}
- case 42: {
- LogStep(42, "Read ACType attribute from the DUT");
+ case 60: {
+ LogStep(60, "Read ACType attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0040"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACType::Id, true,
chip::NullOptional);
}
- case 43: {
- LogStep(43, "Read ACCapacity attribute from the DUT");
+ case 61: {
+ LogStep(61, "Read ACCapacity attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0041"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACCapacity::Id, true,
chip::NullOptional);
}
- case 44: {
- LogStep(44, "Read ACRefrigerantType attribute from the DUT");
+ case 62: {
+ LogStep(62, "Read ACRefrigerantType attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0042"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACRefrigerantType::Id,
true, chip::NullOptional);
}
- case 45: {
- LogStep(45, "Read ACCompressorType attribute from the DUT");
+ case 63: {
+ LogStep(63, "Read ACCompressorType attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0043"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACCompressorType::Id, true,
chip::NullOptional);
}
- case 46: {
- LogStep(46, "Read ACErrorCode attribute from the DUT");
+ case 64: {
+ LogStep(64, "Read ACErrorCode attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0044"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACErrorCode::Id, true,
chip::NullOptional);
}
- case 47: {
- LogStep(47, "Read ACLouverPosition attribute from the DUT");
+ case 65: {
+ LogStep(65, "Read ACLouverPosition attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0045"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACLouverPosition::Id, true,
chip::NullOptional);
}
- case 48: {
- LogStep(48, "Read ACCoilTemperature attribute from the DUT");
+ case 66: {
+ LogStep(66, "Read ACCoilTemperature attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0046"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACCoilTemperature::Id,
true, chip::NullOptional);
}
- case 49: {
- LogStep(49, "Read ACCapacityFormat attribute from the DUT");
+ case 67: {
+ LogStep(67, "Read ACCapacityFormat attribute from the DUT");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0047"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::ACCapacityformat::Id, true,
chip::NullOptional);
@@ -34483,7 +34754,7 @@
class Test_TC_TSTAT_2_2Suite : public TestCommand
{
public:
- Test_TC_TSTAT_2_2Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_TSTAT_2_2", 102, credsIssuerConfig)
+ Test_TC_TSTAT_2_2Suite(CredentialIssuerCommands * credsIssuerConfig) : TestCommand("Test_TC_TSTAT_2_2", 162, credsIssuerConfig)
{
AddArgument("nodeId", 0, UINT64_MAX, &mNodeId);
AddArgument("cluster", &mCluster);
@@ -34504,6 +34775,19 @@
chip::Optional<chip::EndpointId> mEndpoint;
chip::Optional<uint16_t> mTimeout;
+ int16_t MinCoolSetpointLimit;
+ int16_t MaxCoolSetpointLimit;
+ int8_t MinSetpointDeadBand;
+ int16_t MinHeatSetpointLimit;
+ int16_t UnoccupiedCoolingSetpoint;
+ int16_t MaxHeatSetpointLimit;
+ int16_t OccupiedHeatingSetpoint;
+ int16_t OccupiedCoolingSetpoint;
+ int16_t AbsMinHeatSetpointLimitValue;
+ int16_t AbsMaxHeatSetpointLimitValue;
+ int16_t AbsMinCoolSetpointLimit;
+ int16_t AbsMaxCoolSetpointLimit;
+
chip::EndpointId GetEndpoint(chip::EndpointId endpoint) { return mEndpoint.HasValue() ? mEndpoint.Value() : endpoint; }
//
@@ -34525,15 +34809,121 @@
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MinCoolSetpointLimit = value;
+ }
+ break;
+ case 2:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MaxCoolSetpointLimit = value;
+ }
+ break;
+ case 3:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MinSetpointDeadBand = value;
+ }
+ break;
+ case 4:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MinHeatSetpointLimit = value;
+ }
+ break;
+ case 5:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ UnoccupiedCoolingSetpoint = value;
+ }
+ break;
+ case 6:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ MaxHeatSetpointLimit = value;
+ }
+ break;
+ case 7:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ OccupiedHeatingSetpoint = value;
+ }
+ break;
+ case 8:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ OccupiedCoolingSetpoint = value;
+ }
+ break;
+ case 9:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMinHeatSetpointLimitValue = value;
+ }
+ break;
+ case 10:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMaxHeatSetpointLimitValue = value;
+ }
+ break;
+ case 11:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMinCoolSetpointLimit = value;
+ }
+ break;
+ case 12:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ AbsMaxCoolSetpointLimit = value;
+ }
+ break;
+ case 13:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinCoolSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxCoolSetpointLimit));
+ }
+ break;
+ case 14:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
}
break;
- case 2:
+ case 15:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
- case 3:
+ case 16:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
@@ -34541,22 +34931,46 @@
VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2500));
}
break;
- case 4:
+ case 17:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
- case 5:
+ case 18:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 19:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
- case 6:
+ case 20:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 21:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
- case 7:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 8:
+ case 22:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
- case 9:
+ case 23:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 24:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 25:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 26:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinHeatSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxHeatSetpointLimit));
+ }
+ break;
+ case 27:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
@@ -34566,10 +34980,10 @@
VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
}
break;
- case 10:
+ case 28:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
- case 11:
+ case 29:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
@@ -34577,130 +34991,37 @@
VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 2100));
}
break;
- case 12:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 13:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 14:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 15:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 700));
- }
- break;
- case 16:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 17:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 18:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
- }
- break;
- case 19:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 20:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("unoccupiedCoolingSetpoint", value, 2500));
- }
- break;
- case 21:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 22:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 23:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 24:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 25:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
- }
- break;
- case 26:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 27:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("unoccupiedHeatingSetpoint", value, 2500));
- }
- break;
- case 28:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 29:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
case 30:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 31:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
break;
case 32:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
- }
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 33:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 34:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("minHeatSetpointLimit", value, 800));
- }
break;
case 35:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 36:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 37:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 38:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 39:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
break;
case 40:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
@@ -34708,41 +35029,12 @@
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinCoolSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxCoolSetpointLimit));
}
break;
case 41:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 42:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 43:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 44:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("maxHeatSetpointLimit", value, 2900));
- }
- break;
- case 45:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 46:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 47:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 48:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 49:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
@@ -34751,28 +35043,68 @@
VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
}
break;
+ case 42:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 43:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("unoccupiedCoolingSetpoint", value, 2500));
+ }
+ break;
+ case 44:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 45:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 46:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 47:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 48:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 49:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
case 50:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 51:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("minCoolSetpointLimit", value, 2000));
- }
+ shouldContinue = true;
break;
case 52:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 53:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 54:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinHeatSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxHeatSetpointLimit));
+ }
break;
case 55:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
+ }
break;
case 56:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
@@ -34782,21 +35114,15 @@
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
+ VerifyOrReturn(CheckValue("unoccupiedHeatingSetpoint", value, 2500));
}
break;
case 58:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 59:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("maxCoolSetpointLimit", value, 2000));
- }
+ shouldContinue = true;
break;
case 60:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
@@ -34817,22 +35143,30 @@
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 66:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 67:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
break;
case 68:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, AbsMinHeatSetpointLimitValue));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxHeatSetpointLimit));
+ }
break;
case 69:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- int8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckConstraintType("value", "int8s", "int8s"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 25));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
}
break;
case 70:
@@ -34841,9 +35175,9 @@
case 71:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
- int8_t value;
+ int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("minSetpointDeadBand", value, 5));
+ VerifyOrReturn(CheckValue("minHeatSetpointLimit", value, 800));
}
break;
case 72:
@@ -34854,31 +35188,19 @@
break;
case 74:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
break;
case 75:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 76:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::Clusters::Thermostat::ThermostatControlSequence value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("controlSequenceOfOperation", value, 4U));
- VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
- VerifyOrReturn(CheckConstraintMaxValue("value", value, 5U));
- }
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 77:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 78:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- chip::app::Clusters::Thermostat::ThermostatControlSequence value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("controlSequenceOfOperation", value, 2U));
- }
break;
case 79:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
@@ -34888,56 +35210,57 @@
break;
case 81:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
break;
case 82:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinHeatSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, AbsMaxHeatSetpointLimitValue));
+ }
break;
case 83:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 1700));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 700));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3000));
}
break;
case 84:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
case 85:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 86:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 2300));
- }
break;
case 87:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 88:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2300));
+ VerifyOrReturn(CheckValue("maxHeatSetpointLimit", value, 2900));
}
break;
+ case 88:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
case 89:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
break;
case 90:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 91:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2900));
- }
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
break;
case 92:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
@@ -34950,25 +35273,30 @@
break;
case 95:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2300));
- }
break;
case 96:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- {
- int16_t value;
- VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 1700));
- }
+ shouldContinue = true;
break;
case 97:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, AbsMinCoolSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, MaxCoolSetpointLimit));
+ }
break;
case 98:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
+ }
break;
case 99:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
@@ -34978,10 +35306,273 @@
{
int16_t value;
VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
- VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2900));
+ VerifyOrReturn(CheckValue("minCoolSetpointLimit", value, 2000));
}
break;
case 101:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 102:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 103:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 104:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 105:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 106:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 107:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 108:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 109:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 110:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, MinCoolSetpointLimit));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, AbsMaxCoolSetpointLimit));
+ }
+ break;
+ case 111:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int16s", "int16s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 1600));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 3200));
+ }
+ break;
+ case 112:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 113:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("maxCoolSetpointLimit", value, 2000));
+ }
+ break;
+ case 114:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 115:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 116:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 117:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 118:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 119:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 120:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 121:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ shouldContinue = true;
+ break;
+ case 122:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 123:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 124:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 125:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 126:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 127:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 128:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 129:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckConstraintType("value", "int8s", "int8s"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 25));
+ }
+ break;
+ case 130:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 131:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int8_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("minSetpointDeadBand", value, 5));
+ }
+ break;
+ case 132:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 133:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
+ break;
+ case 134:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 135:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 136:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::Clusters::Thermostat::ThermostatControlSequence value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("controlSequenceOfOperation", value, 4U));
+ VerifyOrReturn(CheckConstraintType("value", "enum8", "enum8"));
+ VerifyOrReturn(CheckConstraintMinValue("value", value, 0U));
+ VerifyOrReturn(CheckConstraintMaxValue("value", value, 5U));
+ }
+ break;
+ case 137:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 138:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ chip::app::Clusters::Thermostat::ThermostatControlSequence value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("controlSequenceOfOperation", value, 2U));
+ }
+ break;
+ case 139:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 140:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 141:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 142:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 143:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 1700));
+ }
+ break;
+ case 144:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 145:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 146:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 2300));
+ }
+ break;
+ case 147:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 148:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2300));
+ }
+ break;
+ case 149:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 150:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 151:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2900));
+ }
+ break;
+ case 152:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 153:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 154:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 155:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2300));
+ }
+ break;
+ case 156:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedHeatingSetpoint", value, 1700));
+ }
+ break;
+ case 157:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 158:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 159:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ break;
+ case 160:
+ VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
+ {
+ int16_t value;
+ VerifyOrReturn(CheckDecodeValue(chip::app::DataModel::Decode(*data, value)));
+ VerifyOrReturn(CheckValue("occupiedCoolingSetpoint", value, 2900));
+ }
+ break;
+ case 161:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
{
int16_t value;
@@ -35012,13 +35603,93 @@
return WaitForCommissionee(kIdentityAlpha, value);
}
case 1: {
- LogStep(1, "Reads OccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ LogStep(1, "Saving value for comparision in step 2a read MinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 2: {
+ LogStep(2, "Saving value for comparision in step 2a read MaxCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 3: {
+ LogStep(3, "Saving value for comparision in step 2c read attribute MinSetpointDeadBand");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0019"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
+ true, chip::NullOptional);
+ }
+ case 4: {
+ LogStep(4, "Saving value for comparision in step 3a read MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 5: {
+ LogStep(5, "Saving value for comparision in step 3 reads UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0013"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 6: {
+ LogStep(6, "Saving value for comparision in step 3a read MaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 7: {
+ LogStep(7, "Saving value for comparision in step3c read attribute OccupiedHeatingSetpoint");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0012"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 8: {
+ LogStep(8, "Saving value for comparision in step3c read attribute OccupiedCoolingSetpoint");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0011"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 2: {
- LogStep(2, "Writes a value back that is different but valid for OccupiedCoolingSetpoint attribute");
+ case 9: {
+ LogStep(9, "Saving value for comparision in step 6a read attribute AbsMinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0003"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 10: {
+ LogStep(10, "Saving value for comparision in step 7a read attribute AbsMaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0004"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMaxHeatSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 11: {
+ LogStep(11, "Saving value for comparision in step 8a read attribute AbsMinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0005"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMinCoolSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 12: {
+ LogStep(12, "Saving value for comparision in step9a read attribute AbsMaxCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.A0006"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::AbsMaxCoolSetpointLimit::Id, true, chip::NullOptional);
+ }
+ case 13: {
+ LogStep(13, "Read attribute OccupiedCoolingSetpoint from the DUT");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 14: {
+ LogStep(14, "Reads OccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 15: {
+ LogStep(15, "Writes a value back that is different but valid for OccupiedCoolingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35027,15 +35698,15 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 3: {
- LogStep(3, "Reads it back again to confirm the successful write of OccupiedCoolingSetpoint attribute");
+ case 16: {
+ LogStep(16, "Reads it back again to confirm the successful write of OccupiedCoolingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 4: {
- LogStep(4, "Writes OccupiedCoolingSetpoint to value below the ABSMinCoolSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 17: {
+ LogStep(17, "Writes OccupiedCoolingSetpoint to value below the MinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 30;
@@ -35043,9 +35714,20 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 5: {
- LogStep(5, "Writes OccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 18: {
+ LogStep(18, "Writes OccupiedCoolingSetpoint to value below the MinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 19: {
+ LogStep(19, "Writes OccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4000;
@@ -35053,9 +35735,20 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 6: {
- LogStep(6, "Writes the limit of MinCoolSetpointLimit to OccupiedCoolingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 20: {
+ LogStep(20, "Writes OccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = static_cast<int16_t>(MaxCoolSetpointLimit + 1000);
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 21: {
+ LogStep(21, "Writes the limit of MinCoolSetpointLimit to OccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.F05 && !TSTAT.S.A0017"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 1600;
@@ -35063,19 +35756,32 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 7: {
- LogStep(7, "Writes the CoolingSetpoint below the HeatingSetpoint when auto is enabled");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 22: {
+ LogStep(22, "Writes the limit of MinCoolSetpointLimit to OccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.F05 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
- value = 1600;
+ value = MinCoolSetpointLimit;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 8: {
- LogStep(8, "Writes the limit of MaxCoolSetpointLimit to OccupiedCoolingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 23: {
+ LogStep(23,
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(MinCoolSetpointLimit, (OccupiedHeatingSetpoint + "
+ "MinSetpointDeadBand)) to OccupiedCoolingSetpoint attribute when Auto is enabled");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.A0012 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 24: {
+ LogStep(24, "Writes the limit of MaxCoolSetpointLimit to OccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && !TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 3200;
@@ -35083,14 +35789,32 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 9: {
- LogStep(9, "Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 25: {
+ LogStep(25, "Writes the limit of MaxCoolSetpointLimit to OccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MaxCoolSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 26: {
+ LogStep(26, "Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 10: {
- LogStep(10, "Writes a value back that is different but valid for OccupiedHeatingSetpoint attribute");
+ case 27: {
+ LogStep(27, "Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.A0015 && !TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 28: {
+ LogStep(28, "Writes a value back that is different but valid for OccupiedHeatingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35099,15 +35823,15 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 11: {
- LogStep(11, "Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute");
+ case 29: {
+ LogStep(29, "Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 12: {
- LogStep(12, "Writes OccupiedHeatingSetpoint to value below the MinHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 30: {
+ LogStep(30, "Writes OccupiedHeatingSetpoint to value below the MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 600;
@@ -35115,9 +35839,20 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 13: {
- LogStep(13, "Writes OccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 31: {
+ LogStep(31, "Writes OccupiedHeatingSetpoint to value below the MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 32: {
+ LogStep(32, "Writes OccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4010;
@@ -35125,9 +35860,19 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 14: {
- LogStep(14, "Writes the limit of MinHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 33: {
+ LogStep(33, "Writes OccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = static_cast<int16_t>(MaxHeatSetpointLimit + 1000);
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 34: {
+ LogStep(34, "Writes the limit of MinHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 700;
@@ -35135,15 +35880,20 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 15: {
- LogStep(15, "Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
- return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
- Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ case 35: {
+ LogStep(35, "Writes the limit of MinHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MinHeatSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
}
- case 16: {
- LogStep(16, "Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 36: {
+ LogStep(36, "Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.F05 && !TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 3000;
@@ -35151,9 +35901,19 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 17: {
- LogStep(17, "Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 37: {
+ LogStep(37, "Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && !TSTAT.S.F05 && TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MaxHeatSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 38: {
+ LogStep(38, "Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && !TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 3000;
@@ -35161,14 +35921,35 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 18: {
- LogStep(18, "Reads UnoccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 39: {
+ LogStep(39,
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(MaxHeatSetpointLimit, (OccupiedCoolingSetpoint - "
+ "MinSetpointDeadBand)) to OccupiedHeatingSetpoint attribute when Auto is enabled");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.A0011 && TSTAT.S.A0012 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 40: {
+ LogStep(40, "Reads UnoccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 19: {
- LogStep(19, "Writes a value back that is different but valid for UnoccupiedCoolingSetpoint attribute");
+ case 41: {
+ LogStep(41, "Reads UnoccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 42: {
+ LogStep(42, "Writes a value back that is different but valid for UnoccupiedCoolingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35177,15 +35958,15 @@
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 20: {
- LogStep(20, "Reads it back again to confirm the successful write of UnoccupiedCoolingSetpoint attribute");
+ case 43: {
+ LogStep(43, "Reads it back again to confirm the successful write of UnoccupiedCoolingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 21: {
- LogStep(21, "Writes UnoccupiedCoolingSetpoint to value below the MinCoolSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 44: {
+ LogStep(44, "Writes UnoccupiedCoolingSetpoint to value below the MinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 1002;
@@ -35193,9 +35974,20 @@
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 22: {
- LogStep(22, "Writes UnoccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 45: {
+ LogStep(45, "Writes UnoccupiedCoolingSetpoint to value below the MinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0017 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 46: {
+ LogStep(46, "Writes UnoccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4010;
@@ -35203,34 +35995,100 @@
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 23: {
- LogStep(23, "Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 47: {
+ LogStep(47, "Writes UnoccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
- value = 1800;
+ value = static_cast<int16_t>(MaxCoolSetpointLimit + 1000);
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 24: {
- LogStep(24, "Writes the limit of MaxCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 48: {
+ LogStep(48, "Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
- value = 3000;
+ value = 1600;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 25: {
- LogStep(25, "Reads UnoccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 49: {
+ LogStep(49, "Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0017 && TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = 1600;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 50: {
+ LogStep(50, "Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MinCoolSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 51: {
+ LogStep(51,
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(MinCoolSetpointLimit, (UnoccupiedCoolingSetpoint + "
+ "MinSetpointDeadBand)) to UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0013 && TSTAT.S.F05 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 52: {
+ LogStep(52, "Writes the limit of MaxCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && !TSTAT.S.A0018 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = 3200;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 53: {
+ LogStep(53, "Writes the limit of MaxCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MaxCoolSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedCoolingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 54: {
+ LogStep(54, "Reads UnoccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 26: {
- LogStep(26, "Writes a value back that is different but valid for UnoccupiedHeatingSetpoint attribute");
+ case 55: {
+ LogStep(55, "Reads UnoccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0015 && !TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, true, chip::NullOptional);
+ }
+ case 56: {
+ LogStep(56, "Writes a value back that is different but valid for UnoccupiedHeatingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35239,15 +36097,15 @@
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 27: {
- LogStep(27, "Reads it back again to confirm the successful write of UnoccupiedHeatingSetpoint attribute");
+ case 57: {
+ LogStep(57, "Reads it back again to confirm the successful write of UnoccupiedHeatingSetpoint attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 28: {
- LogStep(28, "Writes UnoccupiedHeatingSetpoint to value below the MinHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 58: {
+ LogStep(58, "Writes UnoccupiedHeatingSetpoint to value below the MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 500;
@@ -35255,9 +36113,20 @@
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 29: {
- LogStep(29, "Writes UnoccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 59: {
+ LogStep(59, "Writes UnoccupiedHeatingSetpoint to value below the MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0015 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 60: {
+ LogStep(60, "Writes UnoccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4010;
@@ -35265,19 +36134,40 @@
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 30: {
- LogStep(30, "Writes the limit of MinHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 61: {
+ LogStep(61, "Writes UnoccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
- value = 1800;
+ value = static_cast<int16_t>(MaxHeatSetpointLimit + 1000);
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 31: {
- LogStep(31, "Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 62: {
+ LogStep(62, "Writes the limit of MinHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = 700;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 63: {
+ LogStep(63, "Writes the limit of MinHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MinHeatSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 64: {
+ LogStep(64, "Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0016 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 3000;
@@ -35285,14 +36175,57 @@
Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 32: {
- LogStep(32, "Reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 65: {
+ LogStep(65, "Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MaxHeatSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 66: {
+ LogStep(66, "Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && !TSTAT.S.A0016 && TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = 3000;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
+ Thermostat::Attributes::UnoccupiedHeatingSetpoint::Id, value, chip::NullOptional,
+ chip::NullOptional);
+ }
+ case 67: {
+ LogStep(67,
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(MaxHeatSetpointLimit, (UnoccupiedCoolingSetpoint - "
+ "MinSetpointDeadBand)) to UnoccupiedHeatingSetpoint attribute when Auto is enabled.");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00 && TSTAT.S.A0013 && TSTAT.S.F05 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 68: {
+ LogStep(68, "Reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016 && TSTAT.S.A0003"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
true, chip::NullOptional);
}
- case 33: {
- LogStep(33, "Writes a value back that is different but valid for MinHeatSetpointLimit attribute");
+ case 69: {
+ LogStep(69, "Reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0016 && !TSTAT.S.A0003"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 70: {
+ LogStep(70, "Writes a value back that is different but valid for MinHeatSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35300,14 +36233,14 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 34: {
- LogStep(34, "Reads it back again to confirm the successful write of MinHeatSetpointLimit attribute");
+ case 71: {
+ LogStep(71, "Reads it back again to confirm the successful write of MinHeatSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
true, chip::NullOptional);
}
- case 35: {
- LogStep(35, "Writes a value back that is different but violates the deadband");
+ case 72: {
+ LogStep(72, "Writes a value back that is different but violates the deadband");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0015 && TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35315,36 +36248,70 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 36: {
- LogStep(36, "Writes MinHeatSetpointLimit to value below the AbsMinHeatSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 73: {
+ LogStep(73, "Writes MinHeatSetpointLimit to value below the AbsMinHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0003"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
- value = 650;
+ value = 100;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 37: {
- LogStep(37, "Writes MinHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 74: {
+ LogStep(74, "Writes MinHeatSetpointLimit to value below the AbsMinHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0003 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 75: {
+ LogStep(75, "Writes MinHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4050;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 38: {
- LogStep(38, "Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 76: {
+ LogStep(76, "Writes MinHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = static_cast<int16_t>(MaxHeatSetpointLimit + 1000);
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 77: {
+ LogStep(77, "Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.A0003"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 700;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 39: {
- LogStep(39, "Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05"),
+ case 78: {
+ LogStep(78, "Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.A0003"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = AbsMinHeatSetpointLimitValue;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 79: {
+ LogStep(79, "Writes the limit of MaxHeatSetpointLimit to MinHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05 && !TSTAT.S.A0016"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35352,15 +36319,45 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 40: {
- LogStep(40, "Reads MaxHeatSetpointLimit attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05"),
+ case 80: {
+ LogStep(80, "Writes the limit of MaxHeatSetpointLimit to MinHeatSetpointimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05 && TSTAT.S.A0016"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MaxHeatSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 81: {
+ LogStep(81,
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(MaxHeatSetpointLimit, (MinCoolSetpointLimit - "
+ "MinSetpointDeadBand)) to MinHeatSetpointLimit attribute when Auto is enabled");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.F05 && TSTAT.S.A0005 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 82: {
+ LogStep(82, "Reads MaxHeatSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && TSTAT.S.A0004 && TSTAT.S.A0016"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
true, chip::NullOptional);
}
- case 41: {
- LogStep(41, "Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute");
+ case 83: {
+ LogStep(83, "Reads MaxHeatSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip(" TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && !TSTAT.S.A0004 && !TSTAT.S.A0016 "),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 84: {
+ LogStep(84, "Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35368,8 +36365,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 42: {
- LogStep(42, "Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit attribute");
+ case 85: {
+ LogStep(85, "Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.A0015 && TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35377,8 +36374,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 43: {
- LogStep(43, "Writes a value back that is different but valid for MaxHeatSetpointLimit attribute");
+ case 86: {
+ LogStep(86, "Writes a value back that is different but valid for MaxHeatSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35386,42 +36383,76 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 44: {
- LogStep(44, "Reads it back again to confirm the successful write of MaxHeatSetpointLimit attribute");
+ case 87: {
+ LogStep(87, "Reads it back again to confirm the successful write of MaxHeatSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
true, chip::NullOptional);
}
- case 45: {
- LogStep(45, "Writes MaxHeatSetpointLimit to value below the AbsMinHeatSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 88: {
+ LogStep(88, "Writes MaxHeatSetpointLimit to value below the AbsMinHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.A0015"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 500;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 46: {
- LogStep(46, "Writes MaxHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 89: {
+ LogStep(89, "Writes MaxHeatSetpointLimit to value below the MinHeatSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.A0015 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 90: {
+ LogStep(90, "Writes MaxHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.A0004"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4000;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 47: {
- LogStep(47, "Writes the limit of AbsMinHeatSetpointLimit to MaxHeatSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 91: {
+ LogStep(91, "Writes MaxHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.A0004"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = static_cast<int16_t>(AbsMaxHeatSetpointLimitValue + 1000);
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 92: {
+ LogStep(92, "Writes the limit of MinHeatSetpointLimit to MaxHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.A0015"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 700;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 48: {
- LogStep(48, "Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05"),
+ case 93: {
+ LogStep(93, "Writes the limit of MinHeatSetpointLimit to MaxHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.A0015"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MinHeatSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 94: {
+ LogStep(94, "Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && !TSTAT.S.A0004"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35429,14 +36460,45 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 49: {
- LogStep(49, "Reads MinCoolSetpointLimit attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 95: {
+ LogStep(95, "Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05 && TSTAT.S.A0004"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = AbsMaxHeatSetpointLimitValue;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 96: {
+ LogStep(96,
+ "Writes If TSTAT.S.F05(AUTO) UpperLimit = Min(AbsMaxHeatSetpointLimit, (MaxCoolSetpointLimit - "
+ "MinSetpointDeadBand)) to MaxHeatSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && TSTAT.S.F05 && TSTAT.S.A0018 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 97: {
+ LogStep(97, "Reads MinCoolSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018 && TSTAT.S.A0005"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
true, chip::NullOptional);
}
- case 50: {
- LogStep(50, "Writes a value back that is different but valid for MinCoolSetpointLimit attribute");
+ case 98: {
+ LogStep(98, "Reads MinCoolSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0018 && !TSTAT.S.A0005"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 99: {
+ LogStep(99, "Writes a value back that is different but valid for MinCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35444,65 +36506,122 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 51: {
- LogStep(51, "Reads it back again to confirm the successful write of MinCoolSetpointLimit attribute");
+ case 100: {
+ LogStep(100, "Reads it back again to confirm the successful write of MinCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
true, chip::NullOptional);
}
- case 52: {
- LogStep(52, "Writes MinCoolSetpointLimit to value below the AbsMinCoolSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 101: {
+ LogStep(101, "Writes MinCoolSetpointLimit to value below the AbsMinCoolSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0005"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 1000;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 53: {
- LogStep(53, "Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 102: {
+ LogStep(102, "Writes MinCoolSetpointLimit to value below the AbsMinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0005 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 103: {
+ LogStep(103, "Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4000;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 54: {
- LogStep(54, "Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 104: {
+ LogStep(104, "Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = static_cast<int16_t>(MaxCoolSetpointLimit + 1000);
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 105: {
+ LogStep(105, "Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0005 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 1600;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 55: {
- LogStep(55, "Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 106: {
+ LogStep(106, "Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0005 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = AbsMinCoolSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 107: {
+ LogStep(107,
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(AbsMinCoolSetpointLimit, (MinHeatSetpointLimit + "
+ "MinSetpointDeadBand)) to MinCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0015 && TSTAT.S.F05 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 108: {
+ LogStep(108, "Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && !TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 3200;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 56: {
- LogStep(56, "Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 109: {
+ LogStep(109, "Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017 && TSTAT.S.A0018"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
- value = 1600;
+ value = MaxCoolSetpointLimit;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 57: {
- LogStep(57, "Reads MaxCoolSetpointLimit attribute from Server DUT and verifies that the value is within range");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 110: {
+ LogStep(110, "Reads MaxCoolSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0017 && TSTAT.S.A0006"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
true, chip::NullOptional);
}
- case 58: {
- LogStep(58, "Writes a value back that is different but valid for MaxCoolSetpointLimit attribute");
+ case 111: {
+ LogStep(111, "Reads MaxCoolSetpointLimit attribute from Server DUT and verifies that the value is within range");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017 && !TSTAT.S.A0006"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ true, chip::NullOptional);
+ }
+ case 112: {
+ LogStep(112, "Writes a value back that is different but valid for MaxCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35510,50 +36629,118 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 59: {
- LogStep(59, "Reads it back again to confirm the successful write of MaxCoolSetpointLimit attribute");
+ case 113: {
+ LogStep(113, "Reads it back again to confirm the successful write of MaxCoolSetpointLimit attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
true, chip::NullOptional);
}
- case 60: {
- LogStep(60, "Writes MaxCoolSetpointLimit to value below the AbsMinCoolSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 114: {
+ LogStep(114, "Writes MaxCoolSetpointLimit to value below the AbsMinCoolSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 1000;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 61: {
- LogStep(61, "Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit ");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 115: {
+ LogStep(115, "Writes MaxCoolSetpointLimit to value below the AbsMinCoolSetpointLimit");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0017 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 116: {
+ LogStep(116, "Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0006"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 4000;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 62: {
- LogStep(62, "Writes the limit of AbsMinCoolSetpointLimit to MaxCoolSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 117: {
+ LogStep(117, "Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit ");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0006"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = static_cast<int16_t>(AbsMaxCoolSetpointLimit + 1000);
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 118: {
+ LogStep(118, "Writes the limit of MinCoolSetpointLimit to MaxCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 1600;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 63: {
- LogStep(63, "Writes the limit of MaxCoolSetpointLimit to MaxCoolSetpointLimit attribute");
- VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ case 119: {
+ LogStep(119, "Writes the limit of MinCoolSetpointLimit to MaxCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0017 && TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = 1600;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 120: {
+ LogStep(120, "Writes the limit of MinCoolSetpointLimit to MaxCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0017 && !TSTAT.S.F05"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = MinCoolSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 121: {
+ LogStep(121,
+ "Writes If TSTAT.S.F05(AUTO) LowerLimit = Max(MinCoolSetpointLimit, (MaxHeatSetpointLimit + "
+ "MinSetpointDeadBand)) to MaxCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0016 && TSTAT.S.F05 && PICS_SKIP_SAMPLE_APP"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message = chip::Span<const char>("Please enter 'y' after successgarbage: not in length on purpose", 30);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt(kIdentityAlpha, value);
+ }
+ case 122: {
+ LogStep(122, "Writes the limit of AbsMaxCoolSetpointLimit to MaxCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.A0006"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
value = 3200;
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 64: {
- LogStep(64, "Writes (sets back) default value of MinHeatSetpointLimit");
+ case 123: {
+ LogStep(123, "Writes the limit of AbsMaxCoolSetpointLimit to MaxCoolSetpointLimit attribute");
+ VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && TSTAT.S.A0006"),
+ return ContinueOnChipMainThread(CHIP_NO_ERROR));
+ ListFreer listFreer;
+ int16_t value;
+ value = AbsMaxCoolSetpointLimit;
+ return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
+ value, chip::NullOptional, chip::NullOptional);
+ }
+ case 124: {
+ LogStep(124, "Writes (sets back) default value of MinHeatSetpointLimit");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0015"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35561,8 +36748,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 65: {
- LogStep(65, "Writes (sets back)default value of MaxHeatSetpointLimit");
+ case 125: {
+ LogStep(125, "Writes (sets back)default value of MaxHeatSetpointLimit");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0016 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35570,8 +36757,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 66: {
- LogStep(66, "Writes MaxHeatSetpointLimit That meets the deadband of 2.5C");
+ case 126: {
+ LogStep(126, "Writes MaxHeatSetpointLimit That meets the deadband of 2.5C");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0016 && !TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35579,8 +36766,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 67: {
- LogStep(67, "Writes (sets back) default value of MinCoolSetpointLimit");
+ case 127: {
+ LogStep(127, "Writes (sets back) default value of MinCoolSetpointLimit");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35588,8 +36775,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 68: {
- LogStep(68, "Writes (sets back) default value of MaxCoolSetpointLimit");
+ case 128: {
+ LogStep(128, "Writes (sets back) default value of MaxCoolSetpointLimit");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35597,14 +36784,14 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxCoolSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 69: {
- LogStep(69, "Reads MinSetpointDeadBand attribute from Server DUT and verifies that the value is within range");
+ case 129: {
+ LogStep(129, "Reads MinSetpointDeadBand attribute from Server DUT and verifies that the value is within range");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
true, chip::NullOptional);
}
- case 70: {
- LogStep(70, "Writes a value back that is different but valid for MinSetpointDeadBand attribute");
+ case 130: {
+ LogStep(130, "Writes a value back that is different but valid for MinSetpointDeadBand attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
@@ -35613,15 +36800,15 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 71: {
- LogStep(71, "Reads it back again to confirm the successful write of MinSetpointDeadBand attribute");
+ case 131: {
+ LogStep(131, "Reads it back again to confirm the successful write of MinSetpointDeadBand attribute");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
true, chip::NullOptional);
}
- case 72: {
- LogStep(72, "Writes the value below MinSetpointDeadBand");
+ case 132: {
+ LogStep(132, "Writes the value below MinSetpointDeadBand");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
@@ -35630,8 +36817,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 73: {
- LogStep(73, "Writes the value above MinSetpointDeadBand ");
+ case 133: {
+ LogStep(133, "Writes the value above MinSetpointDeadBand ");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
@@ -35640,8 +36827,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 74: {
- LogStep(74, "Writes the min limit of MinSetpointDeadBand");
+ case 134: {
+ LogStep(134, "Writes the min limit of MinSetpointDeadBand");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
@@ -35650,8 +36837,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 75: {
- LogStep(75, "Writes the max limit of MinSetpointDeadBand");
+ case 135: {
+ LogStep(135, "Writes the max limit of MinSetpointDeadBand");
VerifyOrDo(!ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable"),
return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
@@ -35660,14 +36847,14 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MinSetpointDeadBand::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 76: {
- LogStep(76, "Reads ControlSequenceOfOperation from Server DUT and verifies that the value is valid");
+ case 136: {
+ LogStep(136, "Reads ControlSequenceOfOperation from Server DUT and verifies that the value is valid");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::ControlSequenceOfOperation::Id, true, chip::NullOptional);
}
- case 77: {
- LogStep(77, "Write Attribute command for ControlSequenceOfOperation with a new valid value");
+ case 137: {
+ LogStep(137, "Write Attribute command for ControlSequenceOfOperation with a new valid value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::ThermostatControlSequence value;
@@ -35676,14 +36863,14 @@
Thermostat::Attributes::ControlSequenceOfOperation::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 78: {
- LogStep(78, "Read it back again to confirm the successful write");
+ case 138: {
+ LogStep(138, "Read it back again to confirm the successful write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::ControlSequenceOfOperation::Id, true, chip::NullOptional);
}
- case 79: {
- LogStep(79, "Writes MaxHeatSetpointLimit attribute to default value of 2950 to meet deadband constraint");
+ case 139: {
+ LogStep(139, "Writes MaxHeatSetpointLimit attribute to default value of 2950 to meet deadband constraint");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.F05"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35691,8 +36878,8 @@
return WriteAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id, Thermostat::Attributes::MaxHeatSetpointLimit::Id,
value, chip::NullOptional, chip::NullOptional);
}
- case 80: {
- LogStep(80, "Sets OccupiedCoolingSetpoint to default value");
+ case 140: {
+ LogStep(140, "Sets OccupiedCoolingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35701,8 +36888,8 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 81: {
- LogStep(81, "Sets OccupiedHeatingSetpoint to default value");
+ case 141: {
+ LogStep(141, "Sets OccupiedHeatingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35711,8 +36898,8 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 82: {
- LogStep(82, "Sends SetpointRaise Command Heat Only");
+ case 142: {
+ LogStep(142, "Sends SetpointRaise Command Heat Only");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::Commands::SetpointRaiseLower::Type value;
@@ -35723,14 +36910,14 @@
);
}
- case 83: {
- LogStep(83, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
+ case 143: {
+ LogStep(143, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 84: {
- LogStep(84, "Sets OccupiedHeatingSetpoint to default value");
+ case 144: {
+ LogStep(144, "Sets OccupiedHeatingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35739,8 +36926,8 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 85: {
- LogStep(85, "Sends SetpointRaise Command Heat Only");
+ case 145: {
+ LogStep(145, "Sends SetpointRaise Command Heat Only");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::Commands::SetpointRaiseLower::Type value;
@@ -35751,14 +36938,14 @@
);
}
- case 86: {
- LogStep(86, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
+ case 146: {
+ LogStep(146, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 87: {
- LogStep(87, "Sends SetpointRaise Command Cool Only");
+ case 147: {
+ LogStep(147, "Sends SetpointRaise Command Cool Only");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::Commands::SetpointRaiseLower::Type value;
@@ -35769,14 +36956,14 @@
);
}
- case 88: {
- LogStep(88, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
+ case 148: {
+ LogStep(148, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 89: {
- LogStep(89, "Sets OccupiedCoolingSetpoint to default value");
+ case 149: {
+ LogStep(149, "Sets OccupiedCoolingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35785,8 +36972,8 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 90: {
- LogStep(90, "Sends SetpointRaise Command Cool Only");
+ case 150: {
+ LogStep(150, "Sends SetpointRaise Command Cool Only");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::Commands::SetpointRaiseLower::Type value;
@@ -35797,14 +36984,14 @@
);
}
- case 91: {
- LogStep(91, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
+ case 151: {
+ LogStep(151, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 92: {
- LogStep(92, "Sets OccupiedCoolingSetpoint to default value");
+ case 152: {
+ LogStep(152, "Sets OccupiedCoolingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35813,8 +37000,8 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 93: {
- LogStep(93, "Sets OccupiedHeatingSetpoint to default value");
+ case 153: {
+ LogStep(153, "Sets OccupiedHeatingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35823,8 +37010,8 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 94: {
- LogStep(94, "Sends SetpointRaise Command Heat & Cool");
+ case 154: {
+ LogStep(154, "Sends SetpointRaise Command Heat & Cool");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::Commands::SetpointRaiseLower::Type value;
@@ -35835,20 +37022,20 @@
);
}
- case 95: {
- LogStep(95, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
+ case 155: {
+ LogStep(155, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 96: {
- LogStep(96, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
+ case 156: {
+ LogStep(156, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
}
- case 97: {
- LogStep(97, "Sets OccupiedCoolingSetpoint to default value");
+ case 157: {
+ LogStep(157, "Sets OccupiedCoolingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35857,8 +37044,8 @@
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 98: {
- LogStep(98, "Sets OccupiedHeatingSetpoint to default value");
+ case 158: {
+ LogStep(158, "Sets OccupiedHeatingSetpoint to default value");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
int16_t value;
@@ -35867,8 +37054,8 @@
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, value, chip::NullOptional,
chip::NullOptional);
}
- case 99: {
- LogStep(99, "Sends SetpointRaise Command Heat & Cool");
+ case 159: {
+ LogStep(159, "Sends SetpointRaise Command Heat & Cool");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
ListFreer listFreer;
chip::app::Clusters::Thermostat::Commands::SetpointRaiseLower::Type value;
@@ -35879,14 +37066,14 @@
);
}
- case 100: {
- LogStep(100, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
+ case 160: {
+ LogStep(160, "Reads back OccupiedCoolingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F01"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedCoolingSetpoint::Id, true, chip::NullOptional);
}
- case 101: {
- LogStep(101, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
+ case 161: {
+ LogStep(161, "Reads back OccupiedHeatingSetpoint to confirm the success of the write");
VerifyOrDo(!ShouldSkip("TSTAT.S.F00"), return ContinueOnChipMainThread(CHIP_NO_ERROR));
return ReadAttribute(kIdentityAlpha, GetEndpoint(1), Thermostat::Id,
Thermostat::Attributes::OccupiedHeatingSetpoint::Id, true, chip::NullOptional);
diff --git a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h
index 6821b5a..f6f906f 100644
--- a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h
+++ b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h
@@ -149,8 +149,6 @@
printf("Test_TC_TMP_1_1\n");
printf("Test_TC_TMP_2_1\n");
printf("Test_TC_TSTAT_1_1\n");
- printf("Test_TC_TSTAT_2_1\n");
- printf("Test_TC_TSTAT_2_2\n");
printf("Test_TC_TSUIC_1_1\n");
printf("Test_TC_TSUIC_2_1\n");
printf("Test_TC_TSUIC_2_2\n");
@@ -2666,6 +2664,10 @@
case 2:
ChipLogProgress(chipTool,
" ***** Test Step 2 : TH1 reads DUT Descriptor cluster ServerList attribute from every Endpoint except 0\n");
+ if (ShouldSkip("PICS_USER_PROMPT")) {
+ NextTest();
+ return;
+ }
err = TestTh1ReadsDutDescriptorClusterServerListAttributeFromEveryEndpointExcept0_2();
break;
}
@@ -2740,22 +2742,12 @@
CHIP_ERROR TestTh1ReadsDutDescriptorClusterServerListAttributeFromEveryEndpointExcept0_2()
{
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterDescriptor alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeServerListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) {
- NSLog(@"TH1 reads DUT Descriptor cluster ServerList attribute from every Endpoint except 0 Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("serverList", "list", "list"));
- VerifyOrReturn(CheckConstraintExcludes("serverList", value, 31UL));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
+ chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value;
+ value.message
+ = chip::Span<const char>("Factory Reset the DUT and enter 'y' after successgarbage: not in length on purpose", 49);
+ value.expectedValue.Emplace();
+ value.expectedValue.Value() = chip::Span<const char>("ygarbage: not in length on purpose", 1);
+ return UserPrompt("alpha", value);
}
};
@@ -34884,20 +34876,8 @@
break;
case 5:
ChipLogProgress(chipTool, " ***** Test Step 5 : Read the global attribute: GeneratedCommandList\n");
- if (ShouldSkip("AUDIOOUTPUT.S.NU")) {
- NextTest();
- return;
- }
err = TestReadTheGlobalAttributeGeneratedCommandList_5();
break;
- case 6:
- ChipLogProgress(chipTool, " ***** Test Step 6 : Read the global attribute: GeneratedCommandList\n");
- if (ShouldSkip(" !AUDIOOUTPUT.S.NU ")) {
- NextTest();
- return;
- }
- err = TestReadTheGlobalAttributeGeneratedCommandList_6();
- break;
}
if (CHIP_NO_ERROR != err) {
@@ -34927,9 +34907,6 @@
case 5:
VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
break;
- case 6:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
}
// Go on to the next test.
@@ -34943,7 +34920,7 @@
private:
std::atomic_uint16_t mTestIndex;
- const uint16_t mTestCount = 7;
+ const uint16_t mTestCount = 6;
chip::Optional<chip::NodeId> mNodeId;
chip::Optional<chip::CharSpan> mCluster;
@@ -35066,31 +35043,6 @@
{
id actualValue = value;
- VerifyOrReturn(CheckValue("GeneratedCommandList", [actualValue count], static_cast<uint32_t>(1)));
- VerifyOrReturn(CheckValue("", actualValue[0], 1UL));
- }
-
- VerifyOrReturn(CheckConstraintType("generatedCommandList", "list", "list"));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadTheGlobalAttributeGeneratedCommandList_6()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterAudioOutput alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read the global attribute: GeneratedCommandList Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
VerifyOrReturn(CheckValue("GeneratedCommandList", [actualValue count], static_cast<uint32_t>(0)));
}
@@ -53914,5395 +53866,6 @@
}
};
-class Test_TC_TSTAT_2_1 : public TestCommandBridge {
-public:
- // NOLINTBEGIN(clang-analyzer-nullability.NullPassedToNonnull): Test constructor nullability not enforced
- Test_TC_TSTAT_2_1()
- : TestCommandBridge("Test_TC_TSTAT_2_1")
- , mTestIndex(0)
- {
- AddArgument("nodeId", 0, UINT64_MAX, &mNodeId);
- AddArgument("cluster", &mCluster);
- AddArgument("endpoint", 0, UINT16_MAX, &mEndpoint);
- AddArgument("timeout", 0, UINT16_MAX, &mTimeout);
- }
- // NOLINTEND(clang-analyzer-nullability.NullPassedToNonnull)
-
- ~Test_TC_TSTAT_2_1() {}
-
- /////////// TestCommand Interface /////////
- void NextTest() override
- {
- CHIP_ERROR err = CHIP_NO_ERROR;
-
- if (0 == mTestIndex) {
- ChipLogProgress(chipTool, " **** Test Start: Test_TC_TSTAT_2_1\n");
- }
-
- if (mTestCount == mTestIndex) {
- ChipLogProgress(chipTool, " **** Test Complete: Test_TC_TSTAT_2_1\n");
- SetCommandExitStatus(CHIP_NO_ERROR);
- return;
- }
-
- Wait();
-
- // Ensure we increment mTestIndex before we start running the relevant
- // command. That way if we lose the timeslice after we send the message
- // but before our function call returns, we won't end up with an
- // incorrect mTestIndex value observed when we get the response.
- switch (mTestIndex++) {
- case 0:
- ChipLogProgress(chipTool, " ***** Test Step 0 : Wait for the commissioned device to be retrieved\n");
- err = TestWaitForTheCommissionedDeviceToBeRetrieved_0();
- break;
- case 1:
- ChipLogProgress(chipTool, " ***** Test Step 1 : Reads mandatory attributes from DUT: LocalTemperature\n");
- err = TestReadsMandatoryAttributesFromDutLocalTemperature_1();
- break;
- case 2:
- ChipLogProgress(chipTool, " ***** Test Step 2 : Read OutdoorTemperature attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0001")) {
- NextTest();
- return;
- }
- err = TestReadOutdoorTemperatureAttributeFromTheDut_2();
- break;
- case 3:
- ChipLogProgress(chipTool, " ***** Test Step 3 : Read Occupancy attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02")) {
- NextTest();
- return;
- }
- err = TestReadOccupancyAttributeFromTheDut_3();
- break;
- case 4:
- ChipLogProgress(chipTool, " ***** Test Step 4 : Reads mandatory attributes from DUT: AbsMinHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0003")) {
- NextTest();
- return;
- }
- err = TestReadsMandatoryAttributesFromDutAbsMinHeatSetpointLimit_4();
- break;
- case 5:
- ChipLogProgress(chipTool, " ***** Test Step 5 : Reads mandatory attributes from DUT: AbsMaxHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0004")) {
- NextTest();
- return;
- }
- err = TestReadsMandatoryAttributesFromDutAbsMaxHeatSetpointLimit_5();
- break;
- case 6:
- ChipLogProgress(chipTool, " ***** Test Step 6 : Reads optional attributes from DUT: AbsMinCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0005")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutAbsMinCoolSetpointLimit_6();
- break;
- case 7:
- ChipLogProgress(chipTool, " ***** Test Step 7 : Reads optional attributes from DUT: AbsMaxCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0006")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutAbsMaxCoolSetpointLimit_7();
- break;
- case 8:
- ChipLogProgress(chipTool, " ***** Test Step 8 : Read PICoolingDemand attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0007")) {
- NextTest();
- return;
- }
- err = TestReadPICoolingDemandAttributeFromTheDut_8();
- break;
- case 9:
- ChipLogProgress(chipTool, " ***** Test Step 9 : Read PIHeatingDemand attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0008")) {
- NextTest();
- return;
- }
- err = TestReadPIHeatingDemandAttributeFromTheDut_9();
- break;
- case 10:
- ChipLogProgress(chipTool, " ***** Test Step 10 : Read HVACSystemTypeConfiguration attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0009")) {
- NextTest();
- return;
- }
- err = TestReadHVACSystemTypeConfigurationAttributeFromTheDut_10();
- break;
- case 11:
- ChipLogProgress(chipTool, " ***** Test Step 11 : Read LocalTemperatureCalibration attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0010")) {
- NextTest();
- return;
- }
- err = TestReadLocalTemperatureCalibrationAttributeFromTheDut_11();
- break;
- case 12:
- ChipLogProgress(chipTool, " ***** Test Step 12 : Reads optional attributes from DUT: OccupiedCoolingSetpoint\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutOccupiedCoolingSetpoint_12();
- break;
- case 13:
- ChipLogProgress(chipTool, " ***** Test Step 13 : Reads mandatory attributes from DUT: OccupiedHeatingSetpoint\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsMandatoryAttributesFromDutOccupiedHeatingSetpoint_13();
- break;
- case 14:
- ChipLogProgress(chipTool, " ***** Test Step 14 : Read UnoccupiedCoolingSetpoint attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.F02")) {
- NextTest();
- return;
- }
- err = TestReadUnoccupiedCoolingSetpointAttributeFromTheDut_14();
- break;
- case 15:
- ChipLogProgress(chipTool, " ***** Test Step 15 : Read UnoccupiedHeatingSetpoint attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.F02")) {
- NextTest();
- return;
- }
- err = TestReadUnoccupiedHeatingSetpointAttributeFromTheDut_15();
- break;
- case 16:
- ChipLogProgress(chipTool, " ***** Test Step 16 : Reads attribute from DUT: MinHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestReadsAttributeFromDutMinHeatSetpointLimit_16();
- break;
- case 17:
- ChipLogProgress(chipTool, " ***** Test Step 17 : Reads attribute from DUT: MaxHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0016")) {
- NextTest();
- return;
- }
- err = TestReadsAttributeFromDutMaxHeatSetpointLimit_17();
- break;
- case 18:
- ChipLogProgress(chipTool, " ***** Test Step 18 : Reads optional attributes from DUT: MinCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutMinCoolSetpointLimit_18();
- break;
- case 19:
- ChipLogProgress(chipTool, " ***** Test Step 19 : Reads optional attributes from DUT: MaxCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutMaxCoolSetpointLimit_19();
- break;
- case 20:
- ChipLogProgress(chipTool, " ***** Test Step 20 : Reads optional attributes from DUT: MinSetpointDeadBand\n");
- if (ShouldSkip("TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutMinSetpointDeadBand_20();
- break;
- case 21:
- ChipLogProgress(chipTool, " ***** Test Step 21 : Read RemoteSensing attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A001a")) {
- NextTest();
- return;
- }
- err = TestReadRemoteSensingAttributeFromTheDut_21();
- break;
- case 22:
- ChipLogProgress(chipTool, " ***** Test Step 22 : Reads mandatory attributes from DUT: ControlSequenceOfOperation\n");
- err = TestReadsMandatoryAttributesFromDutControlSequenceOfOperation_22();
- break;
- case 23:
- ChipLogProgress(chipTool, " ***** Test Step 23 : Reads mandatory attributes from DUT: SystemMode\n");
- err = TestReadsMandatoryAttributesFromDutSystemMode_23();
- break;
- case 24:
- ChipLogProgress(chipTool, " ***** Test Step 24 : Read ThermostatRunningMode attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A001e")) {
- NextTest();
- return;
- }
- err = TestReadThermostatRunningModeAttributeFromTheDut_24();
- break;
- case 25:
- ChipLogProgress(chipTool, " ***** Test Step 25 : Reads constraints of optional attributes from DUT: StartOfWeek\n");
- if (ShouldSkip("TSTAT.S.F03")) {
- NextTest();
- return;
- }
- err = TestReadsConstraintsOfOptionalAttributesFromDutStartOfWeek_25();
- break;
- case 26:
- ChipLogProgress(chipTool, " ***** Test Step 26 : Reads optional attributes from DUT: NumberOfWeeklyTransitions\n");
- if (ShouldSkip("TSTAT.S.F03")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutNumberOfWeeklyTransitions_26();
- break;
- case 27:
- ChipLogProgress(chipTool, " ***** Test Step 27 : Reads optional attributes from DUT: NumberOfDailyTransitions\n");
- if (ShouldSkip("TSTAT.S.F03")) {
- NextTest();
- return;
- }
- err = TestReadsOptionalAttributesFromDutNumberOfDailyTransitions_27();
- break;
- case 28:
- ChipLogProgress(chipTool, " ***** Test Step 28 : Read TemperatureSetpointHold attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0023")) {
- NextTest();
- return;
- }
- err = TestReadTemperatureSetpointHoldAttributeFromTheDut_28();
- break;
- case 29:
- ChipLogProgress(chipTool, " ***** Test Step 29 : Read TemperatureSetpointHoldDuration attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0024")) {
- NextTest();
- return;
- }
- err = TestReadTemperatureSetpointHoldDurationAttributeFromTheDut_29();
- break;
- case 30:
- ChipLogProgress(chipTool, " ***** Test Step 30 : Read ThermostatProgrammingOperationMode attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0025")) {
- NextTest();
- return;
- }
- err = TestReadThermostatProgrammingOperationModeAttributeFromTheDut_30();
- break;
- case 31:
- ChipLogProgress(chipTool, " ***** Test Step 31 : Read ThermostatRunningState attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0029")) {
- NextTest();
- return;
- }
- err = TestReadThermostatRunningStateAttributeFromTheDut_31();
- break;
- case 32:
- ChipLogProgress(chipTool, " ***** Test Step 32 : Read SetpointChangeSource attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0030")) {
- NextTest();
- return;
- }
- err = TestReadSetpointChangeSourceAttributeFromTheDut_32();
- break;
- case 33:
- ChipLogProgress(chipTool, " ***** Test Step 33 : Read SetpointChangeAmount attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0031")) {
- NextTest();
- return;
- }
- err = TestReadSetpointChangeAmountAttributeFromTheDut_33();
- break;
- case 34:
- ChipLogProgress(chipTool, " ***** Test Step 34 : Read SetpointChangeSourceTimestamp attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0032")) {
- NextTest();
- return;
- }
- err = TestReadSetpointChangeSourceTimestampAttributeFromTheDut_34();
- break;
- case 35:
- ChipLogProgress(chipTool, " ***** Test Step 35 : Read OccupiedSetback attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02")) {
- NextTest();
- return;
- }
- err = TestReadOccupiedSetbackAttributeFromTheDut_35();
- break;
- case 36:
- ChipLogProgress(chipTool, " ***** Test Step 36 : Read OccupiedSetbackMin attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02")) {
- NextTest();
- return;
- }
- err = TestReadOccupiedSetbackMinAttributeFromTheDut_36();
- break;
- case 37:
- ChipLogProgress(chipTool, " ***** Test Step 37 : Read OccupiedSetbackMax attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02")) {
- NextTest();
- return;
- }
- err = TestReadOccupiedSetbackMaxAttributeFromTheDut_37();
- break;
- case 38:
- ChipLogProgress(chipTool, " ***** Test Step 38 : Read UnoccupiedSetback attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F04")) {
- NextTest();
- return;
- }
- err = TestReadUnoccupiedSetbackAttributeFromTheDut_38();
- break;
- case 39:
- ChipLogProgress(chipTool, " ***** Test Step 39 : Read UnoccupiedSetbackMin attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F04")) {
- NextTest();
- return;
- }
- err = TestReadUnoccupiedSetbackMinAttributeFromTheDut_39();
- break;
- case 40:
- ChipLogProgress(chipTool, " ***** Test Step 40 : Read UnoccupiedSetbackMax attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F04")) {
- NextTest();
- return;
- }
- err = TestReadUnoccupiedSetbackMaxAttributeFromTheDut_40();
- break;
- case 41:
- ChipLogProgress(chipTool, " ***** Test Step 41 : Read EmergencyHeatDelta attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A003a")) {
- NextTest();
- return;
- }
- err = TestReadEmergencyHeatDeltaAttributeFromTheDut_41();
- break;
- case 42:
- ChipLogProgress(chipTool, " ***** Test Step 42 : Read ACType attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0040")) {
- NextTest();
- return;
- }
- err = TestReadACTypeAttributeFromTheDut_42();
- break;
- case 43:
- ChipLogProgress(chipTool, " ***** Test Step 43 : Read ACCapacity attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0041")) {
- NextTest();
- return;
- }
- err = TestReadACCapacityAttributeFromTheDut_43();
- break;
- case 44:
- ChipLogProgress(chipTool, " ***** Test Step 44 : Read ACRefrigerantType attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0042")) {
- NextTest();
- return;
- }
- err = TestReadACRefrigerantTypeAttributeFromTheDut_44();
- break;
- case 45:
- ChipLogProgress(chipTool, " ***** Test Step 45 : Read ACCompressorType attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0043")) {
- NextTest();
- return;
- }
- err = TestReadACCompressorTypeAttributeFromTheDut_45();
- break;
- case 46:
- ChipLogProgress(chipTool, " ***** Test Step 46 : Read ACErrorCode attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0044")) {
- NextTest();
- return;
- }
- err = TestReadACErrorCodeAttributeFromTheDut_46();
- break;
- case 47:
- ChipLogProgress(chipTool, " ***** Test Step 47 : Read ACLouverPosition attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0045")) {
- NextTest();
- return;
- }
- err = TestReadACLouverPositionAttributeFromTheDut_47();
- break;
- case 48:
- ChipLogProgress(chipTool, " ***** Test Step 48 : Read ACCoilTemperature attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0046")) {
- NextTest();
- return;
- }
- err = TestReadACCoilTemperatureAttributeFromTheDut_48();
- break;
- case 49:
- ChipLogProgress(chipTool, " ***** Test Step 49 : Read ACCapacityFormat attribute from the DUT\n");
- if (ShouldSkip("TSTAT.S.A0047")) {
- NextTest();
- return;
- }
- err = TestReadACCapacityFormatAttributeFromTheDut_49();
- break;
- }
-
- if (CHIP_NO_ERROR != err) {
- ChipLogError(chipTool, " ***** Test Failure: %s\n", chip::ErrorStr(err));
- SetCommandExitStatus(err);
- }
- }
-
- void OnStatusUpdate(const chip::app::StatusIB & status) override
- {
- switch (mTestIndex - 1) {
- case 0:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 1:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 2:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 3:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 4:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 5:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 6:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 7:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 8:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 9:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 10:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 11:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 12:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 13:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 14:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 15:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 16:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 17:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 18:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 19:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 20:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 21:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 22:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 23:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 24:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 25:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 26:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 27:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 28:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 29:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 30:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 31:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 32:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 33:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 34:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 35:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 36:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 37:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 38:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 39:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 40:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 41:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 42:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 43:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 44:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 45:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 46:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 47:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 48:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 49:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- }
-
- // Go on to the next test.
- ContinueOnChipMainThread(CHIP_NO_ERROR);
- }
-
- chip::System::Clock::Timeout GetWaitDuration() const override
- {
- return chip::System::Clock::Seconds16(mTimeout.ValueOr(kTimeoutInSeconds));
- }
-
-private:
- std::atomic_uint16_t mTestIndex;
- const uint16_t mTestCount = 50;
-
- chip::Optional<chip::NodeId> mNodeId;
- chip::Optional<chip::CharSpan> mCluster;
- chip::Optional<chip::EndpointId> mEndpoint;
- chip::Optional<uint16_t> mTimeout;
-
- CHIP_ERROR TestWaitForTheCommissionedDeviceToBeRetrieved_0()
- {
-
- chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value;
- value.nodeId = mNodeId.HasValue() ? mNodeId.Value() : 305414945ULL;
- return WaitForCommissionee("alpha", value);
- }
-
- CHIP_ERROR TestReadsMandatoryAttributesFromDutLocalTemperature_1()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeLocalTemperatureWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads mandatory attributes from DUT: LocalTemperature Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("localTemperature", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("localTemperature", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("localTemperature", [value shortValue], 32767));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadOutdoorTemperatureAttributeFromTheDut_2()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOutdoorTemperatureWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read OutdoorTemperature attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("outdoorTemperature", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("outdoorTemperature", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("outdoorTemperature", [value shortValue], 32767));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadOccupancyAttributeFromTheDut_3()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupancyWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read Occupancy attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("occupancy", "bitmap8", "bitmap8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("occupancy", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("occupancy", [value unsignedCharValue], 1U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMandatoryAttributesFromDutAbsMinHeatSetpointLimit_4()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeAbsMinHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads mandatory attributes from DUT: AbsMinHeatSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("absMinHeatSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("absMinHeatSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("absMinHeatSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMandatoryAttributesFromDutAbsMaxHeatSetpointLimit_5()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeAbsMaxHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads mandatory attributes from DUT: AbsMaxHeatSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("absMaxHeatSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("absMaxHeatSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("absMaxHeatSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutAbsMinCoolSetpointLimit_6()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeAbsMinCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: AbsMinCoolSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("absMinCoolSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("absMinCoolSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("absMinCoolSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutAbsMaxCoolSetpointLimit_7()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeAbsMaxCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: AbsMaxCoolSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("absMaxCoolSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("absMaxCoolSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("absMaxCoolSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadPICoolingDemandAttributeFromTheDut_8()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributePICoolingDemandWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read PICoolingDemand attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("PICoolingDemand", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("PICoolingDemand", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("PICoolingDemand", [value unsignedCharValue], 100U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadPIHeatingDemandAttributeFromTheDut_9()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributePIHeatingDemandWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read PIHeatingDemand attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("PIHeatingDemand", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("PIHeatingDemand", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("PIHeatingDemand", [value unsignedCharValue], 100U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadHVACSystemTypeConfigurationAttributeFromTheDut_10()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeHVACSystemTypeConfigurationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read HVACSystemTypeConfiguration attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("HVACSystemTypeConfiguration", "bitmap8", "bitmap8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("HVACSystemTypeConfiguration", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("HVACSystemTypeConfiguration", [value unsignedCharValue], 63U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadLocalTemperatureCalibrationAttributeFromTheDut_11()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeLocalTemperatureCalibrationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read LocalTemperatureCalibration attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("localTemperatureCalibration", "int8s", "int8s"));
- VerifyOrReturn(CheckConstraintMinValue<int8_t>("localTemperatureCalibration", [value charValue], 25));
- VerifyOrReturn(CheckConstraintMaxValue<int8_t>("localTemperatureCalibration", [value charValue], -25));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutOccupiedCoolingSetpoint_12()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: OccupiedCoolingSetpoint Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("occupiedCoolingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("occupiedCoolingSetpoint", [value shortValue], 1600));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("occupiedCoolingSetpoint", [value shortValue], 3200));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMandatoryAttributesFromDutOccupiedHeatingSetpoint_13()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads mandatory attributes from DUT: OccupiedHeatingSetpoint Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("occupiedHeatingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("occupiedHeatingSetpoint", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("occupiedHeatingSetpoint", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadUnoccupiedCoolingSetpointAttributeFromTheDut_14()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read UnoccupiedCoolingSetpoint attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("unoccupiedCoolingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("unoccupiedCoolingSetpoint", [value shortValue], 1600));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("unoccupiedCoolingSetpoint", [value shortValue], 3200));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadUnoccupiedHeatingSetpointAttributeFromTheDut_15()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read UnoccupiedHeatingSetpoint attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("unoccupiedHeatingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("unoccupiedHeatingSetpoint", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("unoccupiedHeatingSetpoint", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsAttributeFromDutMinHeatSetpointLimit_16()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads attribute from DUT: MinHeatSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("minHeatSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("minHeatSetpointLimit", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("minHeatSetpointLimit", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsAttributeFromDutMaxHeatSetpointLimit_17()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMaxHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads attribute from DUT: MaxHeatSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("maxHeatSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("maxHeatSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("maxHeatSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutMinCoolSetpointLimit_18()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: MinCoolSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("minCoolSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("minCoolSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("minCoolSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutMaxCoolSetpointLimit_19()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMaxCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: MaxCoolSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("maxCoolSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("maxCoolSetpointLimit", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("maxCoolSetpointLimit", [value shortValue], 32767));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutMinSetpointDeadBand_20()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinSetpointDeadBandWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: MinSetpointDeadBand Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("minSetpointDeadBand", "int8s", "int8s"));
- VerifyOrReturn(CheckConstraintMinValue<int8_t>("minSetpointDeadBand", [value charValue], 0));
- VerifyOrReturn(CheckConstraintMaxValue<int8_t>("minSetpointDeadBand", [value charValue], 25));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadRemoteSensingAttributeFromTheDut_21()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeRemoteSensingWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read RemoteSensing attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("remoteSensing", "bitmap8", "bitmap8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("remoteSensing", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("remoteSensing", [value unsignedCharValue], 7U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMandatoryAttributesFromDutControlSequenceOfOperation_22()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeControlSequenceOfOperationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads mandatory attributes from DUT: ControlSequenceOfOperation Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("controlSequenceOfOperation", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("controlSequenceOfOperation", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("controlSequenceOfOperation", [value unsignedCharValue], 5U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMandatoryAttributesFromDutSystemMode_23()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeSystemModeWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads mandatory attributes from DUT: SystemMode Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("systemMode", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("systemMode", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("systemMode", [value unsignedCharValue], 9U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadThermostatRunningModeAttributeFromTheDut_24()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeThermostatRunningModeWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ThermostatRunningMode attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("thermostatRunningMode", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("thermostatRunningMode", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("thermostatRunningMode", [value unsignedCharValue], 9U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsConstraintsOfOptionalAttributesFromDutStartOfWeek_25()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeStartOfWeekWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads constraints of optional attributes from DUT: StartOfWeek Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("startOfWeek", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("startOfWeek", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("startOfWeek", [value unsignedCharValue], 6U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutNumberOfWeeklyTransitions_26()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeNumberOfWeeklyTransitionsWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: NumberOfWeeklyTransitions Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("numberOfWeeklyTransitions", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("numberOfWeeklyTransitions", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("numberOfWeeklyTransitions", [value unsignedCharValue], 255U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOptionalAttributesFromDutNumberOfDailyTransitions_27()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeNumberOfDailyTransitionsWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads optional attributes from DUT: NumberOfDailyTransitions Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("numberOfDailyTransitions", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("numberOfDailyTransitions", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("numberOfDailyTransitions", [value unsignedCharValue], 255U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadTemperatureSetpointHoldAttributeFromTheDut_28()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeTemperatureSetpointHoldWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read TemperatureSetpointHold attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("temperatureSetpointHold", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("temperatureSetpointHold", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("temperatureSetpointHold", [value unsignedCharValue], 1U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadTemperatureSetpointHoldDurationAttributeFromTheDut_29()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeTemperatureSetpointHoldDurationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read TemperatureSetpointHoldDuration attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("temperatureSetpointHoldDuration", "int16u", "int16u"));
- VerifyOrReturn(
- CheckConstraintMinValue<uint16_t>("temperatureSetpointHoldDuration", [value unsignedShortValue], 0U));
- VerifyOrReturn(
- CheckConstraintMaxValue<uint16_t>("temperatureSetpointHoldDuration", [value unsignedShortValue], 1440U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadThermostatProgrammingOperationModeAttributeFromTheDut_30()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeThermostatProgrammingOperationModeWithCompletion:^(
- NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ThermostatProgrammingOperationMode attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("thermostatProgrammingOperationMode", "bitmap8", "bitmap8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("thermostatProgrammingOperationMode", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("thermostatProgrammingOperationMode", [value unsignedCharValue], 7U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadThermostatRunningStateAttributeFromTheDut_31()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeThermostatRunningStateWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ThermostatRunningState attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("thermostatRunningState", "bitmap16", "bitmap16"));
- VerifyOrReturn(CheckConstraintMinValue<uint16_t>("thermostatRunningState", [value unsignedShortValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint16_t>("thermostatRunningState", [value unsignedShortValue], 127U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadSetpointChangeSourceAttributeFromTheDut_32()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeSetpointChangeSourceWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read SetpointChangeSource attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("setpointChangeSource", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("setpointChangeSource", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("setpointChangeSource", [value unsignedCharValue], 2U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadSetpointChangeAmountAttributeFromTheDut_33()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeSetpointChangeAmountWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read SetpointChangeAmount attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("setpointChangeAmount", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("setpointChangeAmount", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("setpointChangeAmount", [value shortValue], 32767));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadSetpointChangeSourceTimestampAttributeFromTheDut_34()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeSetpointChangeSourceTimestampWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read SetpointChangeSourceTimestamp attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("setpointChangeSourceTimestamp", "utc", "utc"));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadOccupiedSetbackAttributeFromTheDut_35()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedSetbackWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read OccupiedSetback attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("occupiedSetback", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("occupiedSetback", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("occupiedSetback", [value unsignedCharValue], 255U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadOccupiedSetbackMinAttributeFromTheDut_36()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedSetbackMinWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read OccupiedSetbackMin attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("occupiedSetbackMin", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("occupiedSetbackMin", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("occupiedSetbackMin", [value unsignedCharValue], 255U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadOccupiedSetbackMaxAttributeFromTheDut_37()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedSetbackMaxWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read OccupiedSetbackMax attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("occupiedSetbackMax", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("occupiedSetbackMax", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("occupiedSetbackMax", [value unsignedCharValue], 255U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadUnoccupiedSetbackAttributeFromTheDut_38()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedSetbackWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read UnoccupiedSetback attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("unoccupiedSetback", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("unoccupiedSetback", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("unoccupiedSetback", [value unsignedCharValue], 255U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadUnoccupiedSetbackMinAttributeFromTheDut_39()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedSetbackMinWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read UnoccupiedSetbackMin attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("unoccupiedSetbackMin", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("unoccupiedSetbackMin", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("unoccupiedSetbackMin", [value unsignedCharValue], 255U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadUnoccupiedSetbackMaxAttributeFromTheDut_40()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedSetbackMaxWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read UnoccupiedSetbackMax attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("unoccupiedSetbackMax", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("unoccupiedSetbackMax", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("unoccupiedSetbackMax", [value unsignedCharValue], 255U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadEmergencyHeatDeltaAttributeFromTheDut_41()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeEmergencyHeatDeltaWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read EmergencyHeatDelta attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("emergencyHeatDelta", "int8u", "int8u"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("emergencyHeatDelta", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("emergencyHeatDelta", [value unsignedCharValue], 255U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACTypeAttributeFromTheDut_42()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACTypeWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACType attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("ACType", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("ACType", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("ACType", [value unsignedCharValue], 4U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACCapacityAttributeFromTheDut_43()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACCapacityWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACCapacity attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("ACCapacity", "int16u", "int16u"));
- VerifyOrReturn(CheckConstraintMinValue<uint16_t>("ACCapacity", [value unsignedShortValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint16_t>("ACCapacity", [value unsignedShortValue], 65535U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACRefrigerantTypeAttributeFromTheDut_44()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACRefrigerantTypeWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACRefrigerantType attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("ACRefrigerantType", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("ACRefrigerantType", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("ACRefrigerantType", [value unsignedCharValue], 3U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACCompressorTypeAttributeFromTheDut_45()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACCompressorTypeWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACCompressorType attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("ACCompressorType", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("ACCompressorType", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("ACCompressorType", [value unsignedCharValue], 3U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACErrorCodeAttributeFromTheDut_46()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACErrorCodeWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACErrorCode attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("ACErrorCode", "bitmap32", "bitmap32"));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACLouverPositionAttributeFromTheDut_47()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACLouverPositionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACLouverPosition attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("ACLouverPosition", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("ACLouverPosition", [value unsignedCharValue], 1U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("ACLouverPosition", [value unsignedCharValue], 5U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACCoilTemperatureAttributeFromTheDut_48()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACCoilTemperatureWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACCoilTemperature attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- if (value != nil) {
-
- VerifyOrReturn(CheckConstraintType("ACCoilTemperature", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("ACCoilTemperature", [value shortValue], -27315));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("ACCoilTemperature", [value shortValue], 32767));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadACCapacityFormatAttributeFromTheDut_49()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeACCapacityformatWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read ACCapacityFormat attribute from the DUT Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("ACCapacityformat", actualValue, 0U));
- }
-
- VerifyOrReturn(CheckConstraintType("ACCapacityformat", "enum8", "enum8"));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-};
-
-class Test_TC_TSTAT_2_2 : public TestCommandBridge {
-public:
- // NOLINTBEGIN(clang-analyzer-nullability.NullPassedToNonnull): Test constructor nullability not enforced
- Test_TC_TSTAT_2_2()
- : TestCommandBridge("Test_TC_TSTAT_2_2")
- , mTestIndex(0)
- {
- AddArgument("nodeId", 0, UINT64_MAX, &mNodeId);
- AddArgument("cluster", &mCluster);
- AddArgument("endpoint", 0, UINT16_MAX, &mEndpoint);
- AddArgument("timeout", 0, UINT16_MAX, &mTimeout);
- }
- // NOLINTEND(clang-analyzer-nullability.NullPassedToNonnull)
-
- ~Test_TC_TSTAT_2_2() {}
-
- /////////// TestCommand Interface /////////
- void NextTest() override
- {
- CHIP_ERROR err = CHIP_NO_ERROR;
-
- if (0 == mTestIndex) {
- ChipLogProgress(chipTool, " **** Test Start: Test_TC_TSTAT_2_2\n");
- }
-
- if (mTestCount == mTestIndex) {
- ChipLogProgress(chipTool, " **** Test Complete: Test_TC_TSTAT_2_2\n");
- SetCommandExitStatus(CHIP_NO_ERROR);
- return;
- }
-
- Wait();
-
- // Ensure we increment mTestIndex before we start running the relevant
- // command. That way if we lose the timeslice after we send the message
- // but before our function call returns, we won't end up with an
- // incorrect mTestIndex value observed when we get the response.
- switch (mTestIndex++) {
- case 0:
- ChipLogProgress(chipTool, " ***** Test Step 0 : Wait for the commissioned device to be retrieved\n");
- err = TestWaitForTheCommissionedDeviceToBeRetrieved_0();
- break;
- case 1:
- ChipLogProgress(chipTool,
- " ***** Test Step 1 : Reads OccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is "
- "within range\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsOccupiedCoolingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_1();
- break;
- case 2:
- ChipLogProgress(chipTool,
- " ***** Test Step 2 : Writes a value back that is different but valid for OccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForOccupiedCoolingSetpointAttribute_2();
- break;
- case 3:
- ChipLogProgress(chipTool,
- " ***** Test Step 3 : Reads it back again to confirm the successful write of OccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfOccupiedCoolingSetpointAttribute_3();
- break;
- case 4:
- ChipLogProgress(
- chipTool, " ***** Test Step 4 : Writes OccupiedCoolingSetpoint to value below the ABSMinCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesOccupiedCoolingSetpointToValueBelowTheABSMinCoolSetpointLimit_4();
- break;
- case 5:
- ChipLogProgress(
- chipTool, " ***** Test Step 5 : Writes OccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesOccupiedCoolingSetpointToValueAboveTheMaxCoolSetpointLimit_5();
- break;
- case 6:
- ChipLogProgress(
- chipTool, " ***** Test Step 6 : Writes the limit of MinCoolSetpointLimit to OccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMinCoolSetpointLimitToOccupiedCoolingSetpointAttribute_6();
- break;
- case 7:
- ChipLogProgress(
- chipTool, " ***** Test Step 7 : Writes the CoolingSetpoint below the HeatingSetpoint when auto is enabled\n");
- if (ShouldSkip("TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheCoolingSetpointBelowTheHeatingSetpointWhenAutoIsEnabled_7();
- break;
- case 8:
- ChipLogProgress(
- chipTool, " ***** Test Step 8 : Writes the limit of MaxCoolSetpointLimit to OccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxCoolSetpointLimitToOccupiedCoolingSetpointAttribute_8();
- break;
- case 9:
- ChipLogProgress(chipTool,
- " ***** Test Step 9 : Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is "
- "within range\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsOccupiedHeatingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_9();
- break;
- case 10:
- ChipLogProgress(chipTool,
- " ***** Test Step 10 : Writes a value back that is different but valid for OccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForOccupiedHeatingSetpointAttribute_10();
- break;
- case 11:
- ChipLogProgress(chipTool,
- " ***** Test Step 11 : Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfOccupiedHeatingSetpointAttribute_11();
- break;
- case 12:
- ChipLogProgress(
- chipTool, " ***** Test Step 12 : Writes OccupiedHeatingSetpoint to value below the MinHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesOccupiedHeatingSetpointToValueBelowTheMinHeatSetpointLimit_12();
- break;
- case 13:
- ChipLogProgress(
- chipTool, " ***** Test Step 13 : Writes OccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesOccupiedHeatingSetpointToValueAboveTheMaxHeatSetpointLimit_13();
- break;
- case 14:
- ChipLogProgress(
- chipTool, " ***** Test Step 14 : Writes the limit of MinHeatSetpointLimit to OccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMinHeatSetpointLimitToOccupiedHeatingSetpointAttribute_14();
- break;
- case 15:
- ChipLogProgress(chipTool,
- " ***** Test Step 15 : Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfOccupiedHeatingSetpointAttribute_15();
- break;
- case 16:
- ChipLogProgress(
- chipTool, " ***** Test Step 16 : Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxHeatSetpointLimitToOccupiedHeatingSetpointAttribute_16();
- break;
- case 17:
- ChipLogProgress(
- chipTool, " ***** Test Step 17 : Writes the limit of MaxHeatSetpointLimit to OccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxHeatSetpointLimitToOccupiedHeatingSetpointAttribute_17();
- break;
- case 18:
- ChipLogProgress(chipTool,
- " ***** Test Step 18 : Reads UnoccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is "
- "within range\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsUnoccupiedCoolingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_18();
- break;
- case 19:
- ChipLogProgress(chipTool,
- " ***** Test Step 19 : Writes a value back that is different but valid for UnoccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForUnoccupiedCoolingSetpointAttribute_19();
- break;
- case 20:
- ChipLogProgress(chipTool,
- " ***** Test Step 20 : Reads it back again to confirm the successful write of UnoccupiedCoolingSetpoint "
- "attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfUnoccupiedCoolingSetpointAttribute_20();
- break;
- case 21:
- ChipLogProgress(
- chipTool, " ***** Test Step 21 : Writes UnoccupiedCoolingSetpoint to value below the MinCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesUnoccupiedCoolingSetpointToValueBelowTheMinCoolSetpointLimit_21();
- break;
- case 22:
- ChipLogProgress(
- chipTool, " ***** Test Step 22 : Writes UnoccupiedCoolingSetpoint to value above the MaxCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesUnoccupiedCoolingSetpointToValueAboveTheMaxCoolSetpointLimit_22();
- break;
- case 23:
- ChipLogProgress(chipTool,
- " ***** Test Step 23 : Writes the limit of MinCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMinCoolSetpointLimitToUnoccupiedCoolingSetpointAttribute_23();
- break;
- case 24:
- ChipLogProgress(chipTool,
- " ***** Test Step 24 : Writes the limit of MaxCoolSetpointLimit to UnoccupiedCoolingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxCoolSetpointLimitToUnoccupiedCoolingSetpointAttribute_24();
- break;
- case 25:
- ChipLogProgress(chipTool,
- " ***** Test Step 25 : Reads UnoccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is "
- "within range\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsUnoccupiedHeatingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_25();
- break;
- case 26:
- ChipLogProgress(chipTool,
- " ***** Test Step 26 : Writes a value back that is different but valid for UnoccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForUnoccupiedHeatingSetpointAttribute_26();
- break;
- case 27:
- ChipLogProgress(chipTool,
- " ***** Test Step 27 : Reads it back again to confirm the successful write of UnoccupiedHeatingSetpoint "
- "attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfUnoccupiedHeatingSetpointAttribute_27();
- break;
- case 28:
- ChipLogProgress(
- chipTool, " ***** Test Step 28 : Writes UnoccupiedHeatingSetpoint to value below the MinHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesUnoccupiedHeatingSetpointToValueBelowTheMinHeatSetpointLimit_28();
- break;
- case 29:
- ChipLogProgress(
- chipTool, " ***** Test Step 29 : Writes UnoccupiedHeatingSetpoint to value above the MaxHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesUnoccupiedHeatingSetpointToValueAboveTheMaxHeatSetpointLimit_29();
- break;
- case 30:
- ChipLogProgress(chipTool,
- " ***** Test Step 30 : Writes the limit of MinHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMinHeatSetpointLimitToUnoccupiedHeatingSetpointAttribute_30();
- break;
- case 31:
- ChipLogProgress(chipTool,
- " ***** Test Step 31 : Writes the limit of MaxHeatSetpointLimit to UnoccupiedHeatingSetpoint attribute\n");
- if (ShouldSkip("TSTAT.S.F02 && TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxHeatSetpointLimitToUnoccupiedHeatingSetpointAttribute_31();
- break;
- case 32:
- ChipLogProgress(chipTool,
- " ***** Test Step 32 : Reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within "
- "range\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestReadsMinHeatSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_32();
- break;
- case 33:
- ChipLogProgress(chipTool,
- " ***** Test Step 33 : Writes a value back that is different but valid for MinHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForMinHeatSetpointLimitAttribute_33();
- break;
- case 34:
- ChipLogProgress(chipTool,
- " ***** Test Step 34 : Reads it back again to confirm the successful write of MinHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMinHeatSetpointLimitAttribute_34();
- break;
- case 35:
- ChipLogProgress(chipTool, " ***** Test Step 35 : Writes a value back that is different but violates the deadband\n");
- if (ShouldSkip("TSTAT.S.A0015 && TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButViolatesTheDeadband_35();
- break;
- case 36:
- ChipLogProgress(
- chipTool, " ***** Test Step 36 : Writes MinHeatSetpointLimit to value below the AbsMinHeatSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestWritesMinHeatSetpointLimitToValueBelowTheAbsMinHeatSetpointLimit_36();
- break;
- case 37:
- ChipLogProgress(
- chipTool, " ***** Test Step 37 : Writes MinHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestWritesMinHeatSetpointLimitToValueAboveTheAbsMaxHeatSetpointLimit_37();
- break;
- case 38:
- ChipLogProgress(
- chipTool, " ***** Test Step 38 : Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMinHeatSetpointLimitToMinHeatSetpointLimitAttribute_38();
- break;
- case 39:
- ChipLogProgress(
- chipTool, " ***** Test Step 39 : Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMaxHeatSetpointLimitToMinHeatSetpointLimitAttribute_39();
- break;
- case 40:
- ChipLogProgress(chipTool,
- " ***** Test Step 40 : Reads MaxHeatSetpointLimit attribute from Server DUT and verifies that the value is within "
- "range\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestReadsMaxHeatSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_40();
- break;
- case 41:
- ChipLogProgress(
- chipTool, " ***** Test Step 41 : Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMinHeatSetpointLimitToMinHeatSetpointLimitAttribute_41();
- break;
- case 42:
- ChipLogProgress(
- chipTool, " ***** Test Step 42 : Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.A0015 && TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMaxHeatSetpointLimitToMinHeatSetpointLimitAttribute_42();
- break;
- case 43:
- ChipLogProgress(chipTool,
- " ***** Test Step 43 : Writes a value back that is different but valid for MaxHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForMaxHeatSetpointLimitAttribute_43();
- break;
- case 44:
- ChipLogProgress(chipTool,
- " ***** Test Step 44 : Reads it back again to confirm the successful write of MaxHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMaxHeatSetpointLimitAttribute_44();
- break;
- case 45:
- ChipLogProgress(
- chipTool, " ***** Test Step 45 : Writes MaxHeatSetpointLimit to value below the AbsMinHeatSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016")) {
- NextTest();
- return;
- }
- err = TestWritesMaxHeatSetpointLimitToValueBelowTheAbsMinHeatSetpointLimit_45();
- break;
- case 46:
- ChipLogProgress(
- chipTool, " ***** Test Step 46 : Writes MaxHeatSetpointLimit to value above the AbsMaxHeatSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016")) {
- NextTest();
- return;
- }
- err = TestWritesMaxHeatSetpointLimitToValueAboveTheAbsMaxHeatSetpointLimit_46();
- break;
- case 47:
- ChipLogProgress(
- chipTool, " ***** Test Step 47 : Writes the limit of AbsMinHeatSetpointLimit to MaxHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMinHeatSetpointLimitToMaxHeatSetpointLimitAttribute_47();
- break;
- case 48:
- ChipLogProgress(
- chipTool, " ***** Test Step 48 : Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0016 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMaxHeatSetpointLimitToMaxHeatSetpointLimitAttribute_48();
- break;
- case 49:
- ChipLogProgress(chipTool,
- " ***** Test Step 49 : Reads MinCoolSetpointLimit attribute from Server DUT and verifies that the value is within "
- "range\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestReadsMinCoolSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_49();
- break;
- case 50:
- ChipLogProgress(chipTool,
- " ***** Test Step 50 : Writes a value back that is different but valid for MinCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForMinCoolSetpointLimitAttribute_50();
- break;
- case 51:
- ChipLogProgress(chipTool,
- " ***** Test Step 51 : Reads it back again to confirm the successful write of MinCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMinCoolSetpointLimitAttribute_51();
- break;
- case 52:
- ChipLogProgress(
- chipTool, " ***** Test Step 52 : Writes MinCoolSetpointLimit to value below the AbsMinCoolSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesMinCoolSetpointLimitToValueBelowTheAbsMinCoolSetpointLimit_52();
- break;
- case 53:
- ChipLogProgress(
- chipTool, " ***** Test Step 53 : Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesMinCoolSetpointLimitToValueAboveTheMaxCoolSetpointLimit_53();
- break;
- case 54:
- ChipLogProgress(
- chipTool, " ***** Test Step 54 : Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMinCoolSetpointLimitToMinCoolSetpointLimitAttribute_54();
- break;
- case 55:
- ChipLogProgress(
- chipTool, " ***** Test Step 55 : Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxCoolSetpointLimitToMinCoolSetpointLimitAttribute_55();
- break;
- case 56:
- ChipLogProgress(
- chipTool, " ***** Test Step 56 : Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMinCoolSetpointLimitToMinCoolSetpointLimitAttribute_56();
- break;
- case 57:
- ChipLogProgress(chipTool,
- " ***** Test Step 57 : Reads MaxCoolSetpointLimit attribute from Server DUT and verifies that the value is within "
- "range\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestReadsMaxCoolSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_57();
- break;
- case 58:
- ChipLogProgress(chipTool,
- " ***** Test Step 58 : Writes a value back that is different but valid for MaxCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForMaxCoolSetpointLimitAttribute_58();
- break;
- case 59:
- ChipLogProgress(chipTool,
- " ***** Test Step 59 : Reads it back again to confirm the successful write of MaxCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMaxCoolSetpointLimitAttribute_59();
- break;
- case 60:
- ChipLogProgress(
- chipTool, " ***** Test Step 60 : Writes MaxCoolSetpointLimit to value below the AbsMinCoolSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestWritesMaxCoolSetpointLimitToValueBelowTheAbsMinCoolSetpointLimit_60();
- break;
- case 61:
- ChipLogProgress(
- chipTool, " ***** Test Step 61 : Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit \n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestWritesMaxCoolSetpointLimitToValueAboveTheMaxCoolSetpointLimit_61();
- break;
- case 62:
- ChipLogProgress(
- chipTool, " ***** Test Step 62 : Writes the limit of AbsMinCoolSetpointLimit to MaxCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfAbsMinCoolSetpointLimitToMaxCoolSetpointLimitAttribute_62();
- break;
- case 63:
- ChipLogProgress(
- chipTool, " ***** Test Step 63 : Writes the limit of MaxCoolSetpointLimit to MaxCoolSetpointLimit attribute\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestWritesTheLimitOfMaxCoolSetpointLimitToMaxCoolSetpointLimitAttribute_63();
- break;
- case 64:
- ChipLogProgress(chipTool, " ***** Test Step 64 : Writes (sets back) default value of MinHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0015")) {
- NextTest();
- return;
- }
- err = TestWritesSetsBackDefaultValueOfMinHeatSetpointLimit_64();
- break;
- case 65:
- ChipLogProgress(chipTool, " ***** Test Step 65 : Writes (sets back)default value of MaxHeatSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0016 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesSetsBackdefaultValueOfMaxHeatSetpointLimit_65();
- break;
- case 66:
- ChipLogProgress(chipTool, " ***** Test Step 66 : Writes MaxHeatSetpointLimit That meets the deadband of 2.5C\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0016 && !TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesMaxHeatSetpointLimitThatMeetsTheDeadbandOf25c_66();
- break;
- case 67:
- ChipLogProgress(chipTool, " ***** Test Step 67 : Writes (sets back) default value of MinCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0017")) {
- NextTest();
- return;
- }
- err = TestWritesSetsBackDefaultValueOfMinCoolSetpointLimit_67();
- break;
- case 68:
- ChipLogProgress(chipTool, " ***** Test Step 68 : Writes (sets back) default value of MaxCoolSetpointLimit\n");
- if (ShouldSkip("TSTAT.S.F01 && TSTAT.S.A0018")) {
- NextTest();
- return;
- }
- err = TestWritesSetsBackDefaultValueOfMaxCoolSetpointLimit_68();
- break;
- case 69:
- ChipLogProgress(chipTool,
- " ***** Test Step 69 : Reads MinSetpointDeadBand attribute from Server DUT and verifies that the value is within "
- "range\n");
- if (ShouldSkip("TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestReadsMinSetpointDeadBandAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_69();
- break;
- case 70:
- ChipLogProgress(chipTool,
- " ***** Test Step 70 : Writes a value back that is different but valid for MinSetpointDeadBand attribute\n");
- if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable")) {
- NextTest();
- return;
- }
- err = TestWritesAValueBackThatIsDifferentButValidForMinSetpointDeadBandAttribute_70();
- break;
- case 71:
- ChipLogProgress(chipTool,
- " ***** Test Step 71 : Reads it back again to confirm the successful write of MinSetpointDeadBand attribute\n");
- if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable")) {
- NextTest();
- return;
- }
- err = TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMinSetpointDeadBandAttribute_71();
- break;
- case 72:
- ChipLogProgress(chipTool, " ***** Test Step 72 : Writes the value below MinSetpointDeadBand\n");
- if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable")) {
- NextTest();
- return;
- }
- err = TestWritesTheValueBelowMinSetpointDeadBand_72();
- break;
- case 73:
- ChipLogProgress(chipTool, " ***** Test Step 73 : Writes the value above MinSetpointDeadBand \n");
- if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable")) {
- NextTest();
- return;
- }
- err = TestWritesTheValueAboveMinSetpointDeadBand_73();
- break;
- case 74:
- ChipLogProgress(chipTool, " ***** Test Step 74 : Writes the min limit of MinSetpointDeadBand\n");
- if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable")) {
- NextTest();
- return;
- }
- err = TestWritesTheMinLimitOfMinSetpointDeadBand_74();
- break;
- case 75:
- ChipLogProgress(chipTool, " ***** Test Step 75 : Writes the max limit of MinSetpointDeadBand\n");
- if (ShouldSkip("TSTAT.S.F05 && TSTAT.S.M.MinSetpointDeadBandWritable")) {
- NextTest();
- return;
- }
- err = TestWritesTheMaxLimitOfMinSetpointDeadBand_75();
- break;
- case 76:
- ChipLogProgress(chipTool,
- " ***** Test Step 76 : Reads ControlSequenceOfOperation from Server DUT and verifies that the value is valid\n");
- if (ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsControlSequenceOfOperationFromServerDutAndVerifiesThatTheValueIsValid_76();
- break;
- case 77:
- ChipLogProgress(
- chipTool, " ***** Test Step 77 : Write Attribute command for ControlSequenceOfOperation with a new valid value\n");
- if (ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestWriteAttributeCommandForControlSequenceOfOperationWithANewValidValue_77();
- break;
- case 78:
- ChipLogProgress(chipTool, " ***** Test Step 78 : Read it back again to confirm the successful write\n");
- if (ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadItBackAgainToConfirmTheSuccessfulWrite_78();
- break;
- case 79:
- ChipLogProgress(chipTool,
- " ***** Test Step 79 : Writes MaxHeatSetpointLimit attribute to default value of 2950 to meet deadband "
- "constraint\n");
- if (ShouldSkip("TSTAT.S.F00 && TSTAT.S.A0015 && TSTAT.S.F05")) {
- NextTest();
- return;
- }
- err = TestWritesMaxHeatSetpointLimitAttributeToDefaultValueOf2950ToMeetDeadbandConstraint_79();
- break;
- case 80:
- ChipLogProgress(chipTool, " ***** Test Step 80 : Sets OccupiedCoolingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedCoolingSetpointToDefaultValue_80();
- break;
- case 81:
- ChipLogProgress(chipTool, " ***** Test Step 81 : Sets OccupiedHeatingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedHeatingSetpointToDefaultValue_81();
- break;
- case 82:
- ChipLogProgress(chipTool, " ***** Test Step 82 : Sends SetpointRaise Command Heat Only\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestSendsSetpointRaiseCommandHeatOnly_82();
- break;
- case 83:
- ChipLogProgress(
- chipTool, " ***** Test Step 83 : Reads back OccupiedHeatingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_83();
- break;
- case 84:
- ChipLogProgress(chipTool, " ***** Test Step 84 : Sets OccupiedHeatingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedHeatingSetpointToDefaultValue_84();
- break;
- case 85:
- ChipLogProgress(chipTool, " ***** Test Step 85 : Sends SetpointRaise Command Heat Only\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestSendsSetpointRaiseCommandHeatOnly_85();
- break;
- case 86:
- ChipLogProgress(
- chipTool, " ***** Test Step 86 : Reads back OccupiedHeatingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_86();
- break;
- case 87:
- ChipLogProgress(chipTool, " ***** Test Step 87 : Sends SetpointRaise Command Cool Only\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSendsSetpointRaiseCommandCoolOnly_87();
- break;
- case 88:
- ChipLogProgress(
- chipTool, " ***** Test Step 88 : Reads back OccupiedCoolingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_88();
- break;
- case 89:
- ChipLogProgress(chipTool, " ***** Test Step 89 : Sets OccupiedCoolingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedCoolingSetpointToDefaultValue_89();
- break;
- case 90:
- ChipLogProgress(chipTool, " ***** Test Step 90 : Sends SetpointRaise Command Cool Only\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSendsSetpointRaiseCommandCoolOnly_90();
- break;
- case 91:
- ChipLogProgress(
- chipTool, " ***** Test Step 91 : Reads back OccupiedCoolingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_91();
- break;
- case 92:
- ChipLogProgress(chipTool, " ***** Test Step 92 : Sets OccupiedCoolingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedCoolingSetpointToDefaultValue_92();
- break;
- case 93:
- ChipLogProgress(chipTool, " ***** Test Step 93 : Sets OccupiedHeatingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedHeatingSetpointToDefaultValue_93();
- break;
- case 94:
- ChipLogProgress(chipTool, " ***** Test Step 94 : Sends SetpointRaise Command Heat & Cool\n");
- if (ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSendsSetpointRaiseCommandHeatCool_94();
- break;
- case 95:
- ChipLogProgress(
- chipTool, " ***** Test Step 95 : Reads back OccupiedCoolingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_95();
- break;
- case 96:
- ChipLogProgress(
- chipTool, " ***** Test Step 96 : Reads back OccupiedHeatingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_96();
- break;
- case 97:
- ChipLogProgress(chipTool, " ***** Test Step 97 : Sets OccupiedCoolingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedCoolingSetpointToDefaultValue_97();
- break;
- case 98:
- ChipLogProgress(chipTool, " ***** Test Step 98 : Sets OccupiedHeatingSetpoint to default value\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestSetsOccupiedHeatingSetpointToDefaultValue_98();
- break;
- case 99:
- ChipLogProgress(chipTool, " ***** Test Step 99 : Sends SetpointRaise Command Heat & Cool\n");
- if (ShouldSkip("TSTAT.S.F00 || TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestSendsSetpointRaiseCommandHeatCool_99();
- break;
- case 100:
- ChipLogProgress(
- chipTool, " ***** Test Step 100 : Reads back OccupiedCoolingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F01")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_100();
- break;
- case 101:
- ChipLogProgress(
- chipTool, " ***** Test Step 101 : Reads back OccupiedHeatingSetpoint to confirm the success of the write\n");
- if (ShouldSkip("TSTAT.S.F00")) {
- NextTest();
- return;
- }
- err = TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_101();
- break;
- }
-
- if (CHIP_NO_ERROR != err) {
- ChipLogError(chipTool, " ***** Test Failure: %s\n", chip::ErrorStr(err));
- SetCommandExitStatus(err);
- }
- }
-
- void OnStatusUpdate(const chip::app::StatusIB & status) override
- {
- switch (mTestIndex - 1) {
- case 0:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 1:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 2:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 3:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 4:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 5:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 6:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 7:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 8:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 9:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 10:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 11:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 12:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 13:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 14:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 15:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 16:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 17:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 18:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 19:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 20:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 21:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 22:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 23:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 24:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 25:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 26:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 27:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 28:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 29:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 30:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 31:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 32:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 33:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 34:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 35:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 36:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 37:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 38:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 39:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 40:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 41:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 42:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 43:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 44:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 45:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 46:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 47:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 48:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 49:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 50:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 51:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 52:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 53:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 54:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 55:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 56:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 57:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 58:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 59:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 60:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 61:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 62:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 63:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 64:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 65:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 66:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 67:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 68:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 69:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 70:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 71:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 72:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 73:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- break;
- case 74:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 75:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 76:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 77:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 78:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 79:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 80:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 81:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 82:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 83:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 84:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 85:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 86:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 87:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 88:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 89:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 90:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 91:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 92:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 93:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 94:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 95:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 96:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 97:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 98:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 99:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 100:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- case 101:
- VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0));
- break;
- }
-
- // Go on to the next test.
- ContinueOnChipMainThread(CHIP_NO_ERROR);
- }
-
- chip::System::Clock::Timeout GetWaitDuration() const override
- {
- return chip::System::Clock::Seconds16(mTimeout.ValueOr(kTimeoutInSeconds));
- }
-
-private:
- std::atomic_uint16_t mTestIndex;
- const uint16_t mTestCount = 102;
-
- chip::Optional<chip::NodeId> mNodeId;
- chip::Optional<chip::CharSpan> mCluster;
- chip::Optional<chip::EndpointId> mEndpoint;
- chip::Optional<uint16_t> mTimeout;
-
- CHIP_ERROR TestWaitForTheCommissionedDeviceToBeRetrieved_0()
- {
-
- chip::app::Clusters::DelayCommands::Commands::WaitForCommissionee::Type value;
- value.nodeId = mNodeId.HasValue() ? mNodeId.Value() : 305414945ULL;
- return WaitForCommissionee("alpha", value);
- }
-
- CHIP_ERROR TestReadsOccupiedCoolingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_1()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads OccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("occupiedCoolingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("occupiedCoolingSetpoint", [value shortValue], 1600));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("occupiedCoolingSetpoint", [value shortValue], 3200));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForOccupiedCoolingSetpointAttribute_2()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:2500];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"OccupiedCoolingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfOccupiedCoolingSetpointAttribute_3()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of OccupiedCoolingSetpoint attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedCoolingSetpoint", actualValue, 2500));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesOccupiedCoolingSetpointToValueBelowTheABSMinCoolSetpointLimit_4()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:30];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes OccupiedCoolingSetpoint to value below the "
- @"ABSMinCoolSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesOccupiedCoolingSetpointToValueAboveTheMaxCoolSetpointLimit_5()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:4000];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes OccupiedCoolingSetpoint to value above the "
- @"MaxCoolSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMinCoolSetpointLimitToOccupiedCoolingSetpointAttribute_6()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:1600];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MinCoolSetpointLimit to "
- @"OccupiedCoolingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheCoolingSetpointBelowTheHeatingSetpointWhenAutoIsEnabled_7()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:1600];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the CoolingSetpoint below the HeatingSetpoint when auto is "
- @"enabled Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxCoolSetpointLimitToOccupiedCoolingSetpointAttribute_8()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:3200];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxCoolSetpointLimit to "
- @"OccupiedCoolingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsOccupiedHeatingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_9()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads OccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("occupiedHeatingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("occupiedHeatingSetpoint", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("occupiedHeatingSetpoint", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForOccupiedHeatingSetpointAttribute_10()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:2100];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"OccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfOccupiedHeatingSetpointAttribute_11()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedHeatingSetpoint", actualValue, 2100));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesOccupiedHeatingSetpointToValueBelowTheMinHeatSetpointLimit_12()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:600];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes OccupiedHeatingSetpoint to value below the "
- @"MinHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesOccupiedHeatingSetpointToValueAboveTheMaxHeatSetpointLimit_13()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:4010];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes OccupiedHeatingSetpoint to value above the "
- @"MaxHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMinHeatSetpointLimitToOccupiedHeatingSetpointAttribute_14()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:700];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MinHeatSetpointLimit to "
- @"OccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfOccupiedHeatingSetpointAttribute_15()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of OccupiedHeatingSetpoint attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedHeatingSetpoint", actualValue, 700));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxHeatSetpointLimitToOccupiedHeatingSetpointAttribute_16()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxHeatSetpointLimit to "
- @"OccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxHeatSetpointLimitToOccupiedHeatingSetpointAttribute_17()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxHeatSetpointLimit to "
- @"OccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsUnoccupiedCoolingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_18()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads UnoccupiedCoolingSetpoint attribute from Server DUT and verifies that the value is within range Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("unoccupiedCoolingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("unoccupiedCoolingSetpoint", [value shortValue], 1600));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("unoccupiedCoolingSetpoint", [value shortValue], 3200));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForUnoccupiedCoolingSetpointAttribute_19()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedCoolingSetpointArgument;
- unoccupiedCoolingSetpointArgument = [NSNumber numberWithShort:2500];
- [cluster writeAttributeUnoccupiedCoolingSetpointWithValue:unoccupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"UnoccupiedCoolingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfUnoccupiedCoolingSetpointAttribute_20()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of UnoccupiedCoolingSetpoint attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("UnoccupiedCoolingSetpoint", actualValue, 2500));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesUnoccupiedCoolingSetpointToValueBelowTheMinCoolSetpointLimit_21()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedCoolingSetpointArgument;
- unoccupiedCoolingSetpointArgument = [NSNumber numberWithShort:1002];
- [cluster writeAttributeUnoccupiedCoolingSetpointWithValue:unoccupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes UnoccupiedCoolingSetpoint to value below the "
- @"MinCoolSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesUnoccupiedCoolingSetpointToValueAboveTheMaxCoolSetpointLimit_22()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedCoolingSetpointArgument;
- unoccupiedCoolingSetpointArgument = [NSNumber numberWithShort:4010];
- [cluster writeAttributeUnoccupiedCoolingSetpointWithValue:unoccupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes UnoccupiedCoolingSetpoint to value above the "
- @"MaxCoolSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMinCoolSetpointLimitToUnoccupiedCoolingSetpointAttribute_23()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedCoolingSetpointArgument;
- unoccupiedCoolingSetpointArgument = [NSNumber numberWithShort:1800];
- [cluster writeAttributeUnoccupiedCoolingSetpointWithValue:unoccupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MinCoolSetpointLimit to "
- @"UnoccupiedCoolingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxCoolSetpointLimitToUnoccupiedCoolingSetpointAttribute_24()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedCoolingSetpointArgument;
- unoccupiedCoolingSetpointArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeUnoccupiedCoolingSetpointWithValue:unoccupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxCoolSetpointLimit to "
- @"UnoccupiedCoolingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsUnoccupiedHeatingSetpointAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_25()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads UnoccupiedHeatingSetpoint attribute from Server DUT and verifies that the value is within range Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("unoccupiedHeatingSetpoint", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("unoccupiedHeatingSetpoint", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("unoccupiedHeatingSetpoint", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForUnoccupiedHeatingSetpointAttribute_26()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedHeatingSetpointArgument;
- unoccupiedHeatingSetpointArgument = [NSNumber numberWithShort:2500];
- [cluster writeAttributeUnoccupiedHeatingSetpointWithValue:unoccupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"UnoccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfUnoccupiedHeatingSetpointAttribute_27()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeUnoccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of UnoccupiedHeatingSetpoint attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("UnoccupiedHeatingSetpoint", actualValue, 2500));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesUnoccupiedHeatingSetpointToValueBelowTheMinHeatSetpointLimit_28()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedHeatingSetpointArgument;
- unoccupiedHeatingSetpointArgument = [NSNumber numberWithShort:500];
- [cluster writeAttributeUnoccupiedHeatingSetpointWithValue:unoccupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes UnoccupiedHeatingSetpoint to value below the "
- @"MinHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesUnoccupiedHeatingSetpointToValueAboveTheMaxHeatSetpointLimit_29()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedHeatingSetpointArgument;
- unoccupiedHeatingSetpointArgument = [NSNumber numberWithShort:4010];
- [cluster writeAttributeUnoccupiedHeatingSetpointWithValue:unoccupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes UnoccupiedHeatingSetpoint to value above the "
- @"MaxHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMinHeatSetpointLimitToUnoccupiedHeatingSetpointAttribute_30()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedHeatingSetpointArgument;
- unoccupiedHeatingSetpointArgument = [NSNumber numberWithShort:1800];
- [cluster writeAttributeUnoccupiedHeatingSetpointWithValue:unoccupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MinHeatSetpointLimit to "
- @"UnoccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxHeatSetpointLimitToUnoccupiedHeatingSetpointAttribute_31()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id unoccupiedHeatingSetpointArgument;
- unoccupiedHeatingSetpointArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeUnoccupiedHeatingSetpointWithValue:unoccupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxHeatSetpointLimit to "
- @"UnoccupiedHeatingSetpoint attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMinHeatSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_32()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads MinHeatSetpointLimit attribute from Server DUT and verifies that the value is within range Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("minHeatSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("minHeatSetpointLimit", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("minHeatSetpointLimit", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForMinHeatSetpointLimitAttribute_33()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:800];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"MinHeatSetpointLimit attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMinHeatSetpointLimitAttribute_34()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of MinHeatSetpointLimit attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("MinHeatSetpointLimit", actualValue, 800));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButViolatesTheDeadband_35()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:2000];
- [cluster
- writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but violates the deadband Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMinHeatSetpointLimitToValueBelowTheAbsMinHeatSetpointLimit_36()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:650];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MinHeatSetpointLimit to value below the "
- @"AbsMinHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMinHeatSetpointLimitToValueAboveTheAbsMaxHeatSetpointLimit_37()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:4050];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MinHeatSetpointLimit to value above the "
- @"AbsMaxHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMinHeatSetpointLimitToMinHeatSetpointLimitAttribute_38()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:700];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMaxHeatSetpointLimitToMinHeatSetpointLimitAttribute_39()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMaxHeatSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_40()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMaxHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads MaxHeatSetpointLimit attribute from Server DUT and verifies that the value is within range Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("maxHeatSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("maxHeatSetpointLimit", [value shortValue], 700));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("maxHeatSetpointLimit", [value shortValue], 3000));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMinHeatSetpointLimitToMinHeatSetpointLimitAttribute_41()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:700];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMinHeatSetpointLimit to MinHeatSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMaxHeatSetpointLimitToMinHeatSetpointLimitAttribute_42()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMaxHeatSetpointLimit to MinHeatSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForMaxHeatSetpointLimitAttribute_43()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:2900];
- [cluster writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"MaxHeatSetpointLimit attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMaxHeatSetpointLimitAttribute_44()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMaxHeatSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of MaxHeatSetpointLimit attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("MaxHeatSetpointLimit", actualValue, 2900));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMaxHeatSetpointLimitToValueBelowTheAbsMinHeatSetpointLimit_45()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:500];
- [cluster writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MaxHeatSetpointLimit to value below the "
- @"AbsMinHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMaxHeatSetpointLimitToValueAboveTheAbsMaxHeatSetpointLimit_46()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:4000];
- [cluster writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MaxHeatSetpointLimit to value above the "
- @"AbsMaxHeatSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMinHeatSetpointLimitToMaxHeatSetpointLimitAttribute_47()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:700];
- [cluster writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMinHeatSetpointLimit to MaxHeatSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMaxHeatSetpointLimitToMaxHeatSetpointLimitAttribute_48()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:3000];
- [cluster writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMaxHeatSetpointLimit to MaxHeatSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMinCoolSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_49()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads MinCoolSetpointLimit attribute from Server DUT and verifies that the value is within range Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("minCoolSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("minCoolSetpointLimit", [value shortValue], 1600));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("minCoolSetpointLimit", [value shortValue], 3200));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForMinCoolSetpointLimitAttribute_50()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:2000];
- [cluster writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"MinCoolSetpointLimit attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMinCoolSetpointLimitAttribute_51()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of MinCoolSetpointLimit attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("MinCoolSetpointLimit", actualValue, 2000));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMinCoolSetpointLimitToValueBelowTheAbsMinCoolSetpointLimit_52()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:1000];
- [cluster writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MinCoolSetpointLimit to value below the "
- @"AbsMinCoolSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMinCoolSetpointLimitToValueAboveTheMaxCoolSetpointLimit_53()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:4000];
- [cluster writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MinCoolSetpointLimit to value above the MaxCoolSetpointLimit "
- @"Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMinCoolSetpointLimitToMinCoolSetpointLimitAttribute_54()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:1600];
- [cluster writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxCoolSetpointLimitToMinCoolSetpointLimitAttribute_55()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:3200];
- [cluster writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxCoolSetpointLimit to MinCoolSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMinCoolSetpointLimitToMinCoolSetpointLimitAttribute_56()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:1600];
- [cluster writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMinCoolSetpointLimit to MinCoolSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMaxCoolSetpointLimitAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_57()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMaxCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads MaxCoolSetpointLimit attribute from Server DUT and verifies that the value is within range Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("maxCoolSetpointLimit", "int16s", "int16s"));
- VerifyOrReturn(CheckConstraintMinValue<int16_t>("maxCoolSetpointLimit", [value shortValue], 1600));
- VerifyOrReturn(CheckConstraintMaxValue<int16_t>("maxCoolSetpointLimit", [value shortValue], 3200));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForMaxCoolSetpointLimitAttribute_58()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxCoolSetpointLimitArgument;
- maxCoolSetpointLimitArgument = [NSNumber numberWithShort:2000];
- [cluster writeAttributeMaxCoolSetpointLimitWithValue:maxCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"MaxCoolSetpointLimit attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMaxCoolSetpointLimitAttribute_59()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMaxCoolSetpointLimitWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of MaxCoolSetpointLimit attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("MaxCoolSetpointLimit", actualValue, 2000));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMaxCoolSetpointLimitToValueBelowTheAbsMinCoolSetpointLimit_60()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxCoolSetpointLimitArgument;
- maxCoolSetpointLimitArgument = [NSNumber numberWithShort:1000];
- [cluster writeAttributeMaxCoolSetpointLimitWithValue:maxCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MaxCoolSetpointLimit to value below the "
- @"AbsMinCoolSetpointLimit Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMaxCoolSetpointLimitToValueAboveTheMaxCoolSetpointLimit_61()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxCoolSetpointLimitArgument;
- maxCoolSetpointLimitArgument = [NSNumber numberWithShort:4000];
- [cluster writeAttributeMaxCoolSetpointLimitWithValue:maxCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MaxCoolSetpointLimit to value above the MaxCoolSetpointLimit "
- @"Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfAbsMinCoolSetpointLimitToMaxCoolSetpointLimitAttribute_62()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxCoolSetpointLimitArgument;
- maxCoolSetpointLimitArgument = [NSNumber numberWithShort:1600];
- [cluster writeAttributeMaxCoolSetpointLimitWithValue:maxCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of AbsMinCoolSetpointLimit to MaxCoolSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheLimitOfMaxCoolSetpointLimitToMaxCoolSetpointLimitAttribute_63()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxCoolSetpointLimitArgument;
- maxCoolSetpointLimitArgument = [NSNumber numberWithShort:3200];
- [cluster writeAttributeMaxCoolSetpointLimitWithValue:maxCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the limit of MaxCoolSetpointLimit to MaxCoolSetpointLimit "
- @"attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesSetsBackDefaultValueOfMinHeatSetpointLimit_64()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minHeatSetpointLimitArgument;
- minHeatSetpointLimitArgument = [NSNumber numberWithShort:700];
- [cluster
- writeAttributeMinHeatSetpointLimitWithValue:minHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes (sets back) default value of MinHeatSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesSetsBackdefaultValueOfMaxHeatSetpointLimit_65()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:3000];
- [cluster
- writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes (sets back)default value of MaxHeatSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMaxHeatSetpointLimitThatMeetsTheDeadbandOf25c_66()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:2950];
- [cluster
- writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(
- @"Writes MaxHeatSetpointLimit That meets the deadband of 2.5C Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesSetsBackDefaultValueOfMinCoolSetpointLimit_67()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minCoolSetpointLimitArgument;
- minCoolSetpointLimitArgument = [NSNumber numberWithShort:1600];
- [cluster
- writeAttributeMinCoolSetpointLimitWithValue:minCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes (sets back) default value of MinCoolSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesSetsBackDefaultValueOfMaxCoolSetpointLimit_68()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxCoolSetpointLimitArgument;
- maxCoolSetpointLimitArgument = [NSNumber numberWithShort:3200];
- [cluster
- writeAttributeMaxCoolSetpointLimitWithValue:maxCoolSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes (sets back) default value of MaxCoolSetpointLimit Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsMinSetpointDeadBandAttributeFromServerDutAndVerifiesThatTheValueIsWithinRange_69()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinSetpointDeadBandWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(
- @"Reads MinSetpointDeadBand attribute from Server DUT and verifies that the value is within range Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- VerifyOrReturn(CheckConstraintType("minSetpointDeadBand", "int8s", "int8s"));
- VerifyOrReturn(CheckConstraintMinValue<int8_t>("minSetpointDeadBand", [value charValue], 0));
- VerifyOrReturn(CheckConstraintMaxValue<int8_t>("minSetpointDeadBand", [value charValue], 25));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesAValueBackThatIsDifferentButValidForMinSetpointDeadBandAttribute_70()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minSetpointDeadBandArgument;
- minSetpointDeadBandArgument = [NSNumber numberWithChar:5];
- [cluster writeAttributeMinSetpointDeadBandWithValue:minSetpointDeadBandArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes a value back that is different but valid for "
- @"MinSetpointDeadBand attribute Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsItBackAgainToConfirmTheSuccessfulWriteOfMinSetpointDeadBandAttribute_71()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeMinSetpointDeadBandWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads it back again to confirm the successful write of MinSetpointDeadBand attribute Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("MinSetpointDeadBand", actualValue, 5));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheValueBelowMinSetpointDeadBand_72()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minSetpointDeadBandArgument;
- minSetpointDeadBandArgument = [NSNumber numberWithChar:-1];
- [cluster writeAttributeMinSetpointDeadBandWithValue:minSetpointDeadBandArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the value below MinSetpointDeadBand Error: %@", err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheValueAboveMinSetpointDeadBand_73()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minSetpointDeadBandArgument;
- minSetpointDeadBandArgument = [NSNumber numberWithChar:30];
- [cluster writeAttributeMinSetpointDeadBandWithValue:minSetpointDeadBandArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the value above MinSetpointDeadBand Error: %@", err);
-
- VerifyOrReturn(CheckValue("status",
- err ? ([err.domain isEqualToString:MTRInteractionErrorDomain]
- ? err.code
- : EMBER_ZCL_STATUS_FAILURE)
- : 0,
- EMBER_ZCL_STATUS_CONSTRAINT_ERROR));
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheMinLimitOfMinSetpointDeadBand_74()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minSetpointDeadBandArgument;
- minSetpointDeadBandArgument = [NSNumber numberWithChar:0];
- [cluster writeAttributeMinSetpointDeadBandWithValue:minSetpointDeadBandArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the min limit of MinSetpointDeadBand Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesTheMaxLimitOfMinSetpointDeadBand_75()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id minSetpointDeadBandArgument;
- minSetpointDeadBandArgument = [NSNumber numberWithChar:25];
- [cluster writeAttributeMinSetpointDeadBandWithValue:minSetpointDeadBandArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes the max limit of MinSetpointDeadBand Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsControlSequenceOfOperationFromServerDutAndVerifiesThatTheValueIsValid_76()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeControlSequenceOfOperationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads ControlSequenceOfOperation from Server DUT and verifies that the value is valid Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("ControlSequenceOfOperation", actualValue, 4U));
- }
-
- VerifyOrReturn(CheckConstraintType("controlSequenceOfOperation", "enum8", "enum8"));
- VerifyOrReturn(CheckConstraintMinValue<uint8_t>("controlSequenceOfOperation", [value unsignedCharValue], 0U));
- VerifyOrReturn(CheckConstraintMaxValue<uint8_t>("controlSequenceOfOperation", [value unsignedCharValue], 5U));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWriteAttributeCommandForControlSequenceOfOperationWithANewValidValue_77()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id controlSequenceOfOperationArgument;
- controlSequenceOfOperationArgument = [NSNumber numberWithUnsignedChar:2U];
- [cluster writeAttributeControlSequenceOfOperationWithValue:controlSequenceOfOperationArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Write Attribute command for ControlSequenceOfOperation with a "
- @"new valid value Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadItBackAgainToConfirmTheSuccessfulWrite_78()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeControlSequenceOfOperationWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Read it back again to confirm the successful write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("ControlSequenceOfOperation", actualValue, 2U));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestWritesMaxHeatSetpointLimitAttributeToDefaultValueOf2950ToMeetDeadbandConstraint_79()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id maxHeatSetpointLimitArgument;
- maxHeatSetpointLimitArgument = [NSNumber numberWithShort:2950];
- [cluster writeAttributeMaxHeatSetpointLimitWithValue:maxHeatSetpointLimitArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Writes MaxHeatSetpointLimit attribute to default value of 2950 to "
- @"meet deadband constraint Error: %@",
- err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedCoolingSetpointToDefaultValue_80()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:2600];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedCoolingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedHeatingSetpointToDefaultValue_81()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:2000];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedHeatingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSendsSetpointRaiseCommandHeatOnly_82()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- __auto_type * params = [[MTRThermostatClusterSetpointRaiseLowerParams alloc] init];
- params.mode = [NSNumber numberWithUnsignedChar:0U];
- params.amount = [NSNumber numberWithChar:-30];
- [cluster setpointRaiseLowerWithParams:params
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sends SetpointRaise Command Heat Only Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_83()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedHeatingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedHeatingSetpoint", actualValue, 1700));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedHeatingSetpointToDefaultValue_84()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:2000];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedHeatingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSendsSetpointRaiseCommandHeatOnly_85()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- __auto_type * params = [[MTRThermostatClusterSetpointRaiseLowerParams alloc] init];
- params.mode = [NSNumber numberWithUnsignedChar:0U];
- params.amount = [NSNumber numberWithChar:30];
- [cluster setpointRaiseLowerWithParams:params
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sends SetpointRaise Command Heat Only Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_86()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedHeatingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedHeatingSetpoint", actualValue, 2300));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSendsSetpointRaiseCommandCoolOnly_87()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- __auto_type * params = [[MTRThermostatClusterSetpointRaiseLowerParams alloc] init];
- params.mode = [NSNumber numberWithUnsignedChar:1U];
- params.amount = [NSNumber numberWithChar:-30];
- [cluster setpointRaiseLowerWithParams:params
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sends SetpointRaise Command Cool Only Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_88()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedCoolingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedCoolingSetpoint", actualValue, 2300));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedCoolingSetpointToDefaultValue_89()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:2600];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedCoolingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSendsSetpointRaiseCommandCoolOnly_90()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- __auto_type * params = [[MTRThermostatClusterSetpointRaiseLowerParams alloc] init];
- params.mode = [NSNumber numberWithUnsignedChar:1U];
- params.amount = [NSNumber numberWithChar:30];
- [cluster setpointRaiseLowerWithParams:params
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sends SetpointRaise Command Cool Only Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_91()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedCoolingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedCoolingSetpoint", actualValue, 2900));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedCoolingSetpointToDefaultValue_92()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:2600];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedCoolingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedHeatingSetpointToDefaultValue_93()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:2000];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedHeatingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSendsSetpointRaiseCommandHeatCool_94()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- __auto_type * params = [[MTRThermostatClusterSetpointRaiseLowerParams alloc] init];
- params.mode = [NSNumber numberWithUnsignedChar:2U];
- params.amount = [NSNumber numberWithChar:-30];
- [cluster setpointRaiseLowerWithParams:params
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sends SetpointRaise Command Heat & Cool Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_95()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedCoolingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedCoolingSetpoint", actualValue, 2300));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_96()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedHeatingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedHeatingSetpoint", actualValue, 1700));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedCoolingSetpointToDefaultValue_97()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedCoolingSetpointArgument;
- occupiedCoolingSetpointArgument = [NSNumber numberWithShort:2600];
- [cluster writeAttributeOccupiedCoolingSetpointWithValue:occupiedCoolingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedCoolingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSetsOccupiedHeatingSetpointToDefaultValue_98()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- id occupiedHeatingSetpointArgument;
- occupiedHeatingSetpointArgument = [NSNumber numberWithShort:2000];
- [cluster writeAttributeOccupiedHeatingSetpointWithValue:occupiedHeatingSetpointArgument
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sets OccupiedHeatingSetpoint to default value Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestSendsSetpointRaiseCommandHeatCool_99()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- __auto_type * params = [[MTRThermostatClusterSetpointRaiseLowerParams alloc] init];
- params.mode = [NSNumber numberWithUnsignedChar:2U];
- params.amount = [NSNumber numberWithChar:30];
- [cluster setpointRaiseLowerWithParams:params
- completion:^(NSError * _Nullable err) {
- NSLog(@"Sends SetpointRaise Command Heat & Cool Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedCoolingSetpointToConfirmTheSuccessOfTheWrite_100()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedCoolingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedCoolingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedCoolingSetpoint", actualValue, 2900));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-
- CHIP_ERROR TestReadsBackOccupiedHeatingSetpointToConfirmTheSuccessOfTheWrite_101()
- {
-
- MTRBaseDevice * device = GetDevice("alpha");
- __auto_type * cluster = [[MTRBaseClusterThermostat alloc] initWithDevice:device endpoint:@(1) queue:mCallbackQueue];
- VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE);
-
- [cluster readAttributeOccupiedHeatingSetpointWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) {
- NSLog(@"Reads back OccupiedHeatingSetpoint to confirm the success of the write Error: %@", err);
-
- VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));
-
- {
- id actualValue = value;
- VerifyOrReturn(CheckValue("OccupiedHeatingSetpoint", actualValue, 2300));
- }
-
- NextTest();
- }];
-
- return CHIP_NO_ERROR;
- }
-};
-
class Test_TC_TSUIC_1_1 : public TestCommandBridge {
public:
// NOLINTBEGIN(clang-analyzer-nullability.NullPassedToNonnull): Test constructor nullability not enforced
@@ -130236,8 +124799,6 @@
make_unique<Test_TC_TMP_1_1>(),
make_unique<Test_TC_TMP_2_1>(),
make_unique<Test_TC_TSTAT_1_1>(),
- make_unique<Test_TC_TSTAT_2_1>(),
- make_unique<Test_TC_TSTAT_2_2>(),
make_unique<Test_TC_TSUIC_1_1>(),
make_unique<Test_TC_TSUIC_2_1>(),
make_unique<Test_TC_TSUIC_2_2>(),