From 522c54288724a16c2cbb020c7419704c4a6ab385 Mon Sep 17 00:00:00 2001 From: manjunath-grl <102359958+manjunath-grl@users.noreply.github.com> Date: Wed, 18 Oct 2023 23:40:53 +0530 Subject: [PATCH] Fixes yaml script issues Oct 13 (#29747) * Fixes issue: 677, 678, 679, 680, 689 DGWIFI-1.1 BRBINFO-2.1 FAN-1.1 MOD-1.1 ALOGIN-12.1 * Auto generated files * Restyled by whitespace * Fixes issue: 987, 675 TC-AUDIOOUTPUT-1.8 TC-BINFO-2.2 * Restyled by whitespace * Modified tests TC-DRLK-2.1 TC-DRLK-2.10 --------- Co-authored-by: Restyled.io --- .../certification/Test_TC_ALOGIN_12_2.yaml | 37 ++++ .../Test_TC_AUDIOOUTPUT_1_8.yaml | 4 +- .../certification/Test_TC_BINFO_2_2.yaml | 28 ++- .../certification/Test_TC_BRBINFO_2_1.yaml | 13 +- .../certification/Test_TC_DGWIFI_1_1.yaml | 67 ++++--- .../certification/Test_TC_DRLK_2_1.yaml | 2 +- .../certification/Test_TC_DRLK_2_10.yaml | 13 +- .../suites/certification/Test_TC_FAN_1_1.yaml | 21 +- .../suites/certification/Test_TC_MOD_1_1.yaml | 24 +-- .../tests/suites/certification/ci-pics-values | 2 +- .../zap-generated/test/Commands.h | 183 ++++++++++-------- 11 files changed, 236 insertions(+), 158 deletions(-) diff --git a/src/app/tests/suites/certification/Test_TC_ALOGIN_12_2.yaml b/src/app/tests/suites/certification/Test_TC_ALOGIN_12_2.yaml index 57f3888c65dffe..614a7977ddc59a 100644 --- a/src/app/tests/suites/certification/Test_TC_ALOGIN_12_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_ALOGIN_12_2.yaml @@ -27,6 +27,43 @@ tests: - label: "Preconditions" verification: | Commission TH to DUT, if not done so already. In some cases, such as with a Casting Video Player, the TH commissions the DUT. + + Product maker needs to provide instructions for how to trigger the command on the DUT. For comparison, the DUT behavior for this test step can be simulated using chip-tool (when DUT is a commissioner) or tv-casting-app (when DUT is a commissionee): + + The following command on the example tv-app will launch a content app on endpoint 4: + ./chip-tool applicationlauncher launch-app '{"catalogVendorID": 123, "applicationID": "exampleid"}' 1 1 + ./chip-tv-casting-app applicationlauncher launch-app '{"catalogVendorID": 123, "applicationID": "exampleid"}' 1 1 + On TH (tv-app), Verify the launch app command is received successfully. + 1666779708.066501][24994:24994] CHIP:DMG: InvokeRequestMessage = + [1666779708.066504][24994:24994] CHIP:DMG: { + [1666779708.066507][24994:24994] CHIP:DMG: suppressResponse = false, + [1666779708.066509][24994:24994] CHIP:DMG: timedRequest = false, + [1666779708.066512][24994:24994] CHIP:DMG: InvokeRequests = + [1666779708.066517][24994:24994] CHIP:DMG: [ + [1666779708.066520][24994:24994] CHIP:DMG: CommandDataIB = + [1666779708.066524][24994:24994] CHIP:DMG: { + [1666779708.066527][24994:24994] CHIP:DMG: CommandPathIB = + [1666779708.066532][24994:24994] CHIP:DMG: { + [1666779708.066536][24994:24994] CHIP:DMG: EndpointId = 0x1, + [1666779708.066540][24994:24994] CHIP:DMG: ClusterId = 0x50c, + [1666779708.066545][24994:24994] CHIP:DMG: CommandId = 0x0, + [1666779708.066547][24994:24994] CHIP:DMG: }, + [1666779708.066551][24994:24994] CHIP:DMG: + [1666779708.066553][24994:24994] CHIP:DMG: CommandFields = + [1666779708.066555][24994:24994] CHIP:DMG: { + [1666779708.066557][24994:24994] CHIP:DMG: 0x0 = + [1666779708.066560][24994:24994] CHIP:DMG: { + [1666779708.066566][24994:24994] CHIP:DMG: 0x0 = 123, + [1666779708.066569][24994:24994] CHIP:DMG: 0x1 = "exampleid" (9 chars), + [1666779708.066572][24994:24994] CHIP:DMG: }, + [1666779708.066575][24994:24994] CHIP:DMG: }, + [1666779708.066578][24994:24994] CHIP:DMG: }, + [1666779708.066581][24994:24994] CHIP:DMG: + [1666779708.066583][24994:24994] CHIP:DMG: ], + [1666779708.066586][24994:24994] CHIP:DMG: + [1666779708.066588][24994:24994] CHIP:DMG: InteractionModelRevision = 1 + [1666779708.066590][24994:24994] CHIP:DMG: }, + [1666779708.066602][24994:24994] CHIP:DMG: AccessControl: checking f=2 a=c s=0x000000000001B669 t= c=0x0000_050C e=1 p=o disabled: true - label: "Step 1: DUT sends GetSetupPIN command to TH" 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 6493ece836f96e..b00040339a5693 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 @@ -48,7 +48,7 @@ tests: response: constraints: type: bitmap32 - hasMasksSet: [0x2] + hasMasksSet: [0x1] - label: "Step 2b: Read the global attribute: FeatureMap" PICS: " !AUDIOOUTPUT.S.F00 " @@ -57,7 +57,7 @@ tests: response: constraints: type: bitmap32 - hasMasksClear: [0x2] + hasMasksClear: [0x1] - label: "Step 3: Read the global attribute: AttributeList" PICS: PICS_EVENT_LIST_ENABLED diff --git a/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml b/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml index bf8b2bbe5f195b..e6496d9fa5c29d 100644 --- a/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml +++ b/src/app/tests/suites/certification/Test_TC_BINFO_2_2.yaml @@ -139,13 +139,37 @@ tests: minInterval: 30 maxInterval: 100 - - label: "Verify that ShutDown event has priority set as CRITICAL" + - label: + "Shutdown the DUT and Verify that ShutDown event has priority set as + CRITICAL" + verification: | + To verify ShutDown event follow the below commands , Pls use equivalent command on the respective DUT + + + 1. Launch chip-tool into interactive mode with the command + + ./chip-tool interactive start + + 2. run below command in interactive mode shell and Turn down the DUT + basicinformation subscribe-event shut-down 20 100 1 0 + + verify that ShutDown event as priority set has CRITICAL on TH(Chip-tool) + + CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0028 Event 0x0000_0001 + [1653050528.900202][119367:119372] CHIP:TOO: Event number: 5 + [1653050528.900295][119367:119372] CHIP:TOO: Priority: Critical + [1653050528.900386][119367:119372] CHIP:TOO: Timestamp: 289436805 + [1653050528.900630][119367:119372] CHIP:TOO: ShutDown: { + [1653050528.900732][119367:119372] CHIP:TOO: } + [1653050528.900892][119367:119372] CHIP:DMG: Refresh LivenessCheckTime for 28000 milliseconds with SubscriptionId = 0x27408c83 Peer = 01:0000000000000001 cluster: "LogCommands" command: "UserPrompt" PICS: PICS_SKIP_SAMPLE_APP && BINFO.S.E01 arguments: values: - name: "message" - value: "If priority set as CRITICAL enter 'y' for success" + value: + "Enter 'y' after successfully ShutDown DUT & priority set as + CRITICAL" - name: "expectedValue" value: "y" diff --git a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml index a37f2954b1c75c..8f37c84f6f6811 100644 --- a/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml @@ -172,7 +172,9 @@ tests: verification: | ./chip-tool bridgeddevicebasicinformation write node-label '"newnode"' 1 3 - Verify response has unsupported write on TH(chip-tool) Log: + Via the TH (chip-tool), verify the SUCCESS response for NodeLabel attribute write function. + + Current sample apps do not have this implementation. However, if the vendor has implemented it, the below response will be displayed. NOTE the quotes: single-quote/double-quote/string/double-quote/single-quote @@ -181,7 +183,7 @@ tests: [1660839701.840505][2444:2449] CHIP:DMG: [1660839701.840578][2444:2449] CHIP:DMG: StatusIB = [1660839701.840661][2444:2449] CHIP:DMG: { - [1660839701.840742][2444:2449] CHIP:DMG: status = 0x88 (UNSUPPORTED_WRITE), + [1660839701.840742][2444:2449] CHIP:DMG: status = 0x00 (SUCCESS), [1660839701.840827][2444:2449] CHIP:DMG: }, [1660839701.840905][2444:2449] CHIP:DMG: [1660839701.840973][2444:2449] CHIP:DMG: }, @@ -199,11 +201,12 @@ tests: verification: | ./chip-tool bridgeddevicebasicinformation read node-label 1 3 - Verify the value of node-label is type of string and contains length between 0 and 32 in TH(chip-tool) Log: - Note: If the write access is implemented then the value of the of the Nodelabel will be changed into "newnode" + Via the TH (chip-tool), verify that the NodeLabel attribute value is changed to newnode. + + Current sample apps do not have this implementation. However, if the vendor has implemented it, the below response will be displayed. [1657696463.081741][15476:15481] CHIP:TOO: Endpoint: 3 Cluster: 0x0000_0039 Attribute 0x0000_0005 DataVersion: 2577979325 - [1657696463.081791][15476:15481] CHIP:TOO: NodeLabel: Light 1 + [1657696463.081791][15476:15481] CHIP:TOO: NodeLabel: newnode cluster: "LogCommands" command: "UserPrompt" arguments: diff --git a/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml b/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml index 6f1fc9d599369a..8ac9fd1a0afd2e 100644 --- a/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DGWIFI_1_1.yaml @@ -122,35 +122,7 @@ tests: type: list contains: [11] - - label: "Step 5a: TH reads AcceptedCommandList from DUT" - PICS: " !DGWIFI.S.F01 " - command: "readAttribute" - attribute: "AcceptedCommandList" - response: - value: [] - constraints: - type: list - - - label: - "Step 5b: TH reads Feature dependent(DGWIFI.S.F01) command in - AcceptedCommandList from DUT" - PICS: DGWIFI.S.F01 - command: "readAttribute" - attribute: "AcceptedCommandList" - response: - constraints: - type: list - contains: [0] - - - label: "Step 6: TH reads GeneratedCommandList from DUT" - command: "readAttribute" - attribute: "GeneratedCommandList" - response: - value: [] - constraints: - type: list - - - label: "Step 7a: TH reads EventList from DUT" + - label: "Step 5a: TH reads EventList from DUT" PICS: " !DGWIFI.S.E00 && !DGWIFI.S.E01 && !DGWIFI.S.E02 && PICS_EVENT_LIST_ENABLED" @@ -160,8 +132,9 @@ tests: value: [] constraints: type: list + - label: - "Step 7b: TH reads optional attribute (Disconnection) in EventList + "Step 5b: TH reads optional attribute (Disconnection) in EventList from DUT" PICS: DGWIFI.S.E00 && PICS_EVENT_LIST_ENABLED command: "readAttribute" @@ -170,8 +143,9 @@ tests: constraints: type: list contains: [0] + - label: - "Step 7c: TH reads optional attribute (AssociationFailure) in + "Step 5c: TH reads optional attribute (AssociationFailure) in EventList from DUT" PICS: DGWIFI.S.E01 && PICS_EVENT_LIST_ENABLED command: "readAttribute" @@ -180,8 +154,9 @@ tests: constraints: type: list contains: [1] + - label: - "Step 7d: TH reads optional attribute (ConnectionStatus) in EventList + "Step 5d: TH reads optional attribute (ConnectionStatus) in EventList from DUT" PICS: DGWIFI.S.E02 && PICS_EVENT_LIST_ENABLED command: "readAttribute" @@ -190,3 +165,31 @@ tests: constraints: type: list contains: [2] + + - label: "Step 6a: TH reads AcceptedCommandList from DUT" + PICS: " !DGWIFI.S.F01 " + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + value: [] + constraints: + type: list + + - label: + "Step 6b: TH reads Feature dependent(DGWIFI.S.F01) command in + AcceptedCommandList from DUT" + PICS: DGWIFI.S.F01 + command: "readAttribute" + attribute: "AcceptedCommandList" + response: + constraints: + type: list + contains: [0] + + - label: "Step 7: TH reads GeneratedCommandList from DUT" + command: "readAttribute" + attribute: "GeneratedCommandList" + response: + value: [] + constraints: + type: list diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml index e54dbd3b2af7f0..b049f65f8a7d64 100755 --- a/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_1.yaml @@ -248,7 +248,7 @@ tests: minValue: 0 maxValue: 11 - - label: "Step 2c: TH writes LockType attribute as 10" + - label: "Step 2b: TH writes LockType attribute as 10" PICS: DRLK.S.A0001 command: "writeAttribute" attribute: "LockType" diff --git a/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml b/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml index c7b566e61e9b7e..f561d9130e46ce 100644 --- a/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml +++ b/src/app/tests/suites/certification/Test_TC_DRLK_2_10.yaml @@ -450,7 +450,7 @@ tests: 0-Single" PICS: DRLK.S.F08 && DRLK.S.C1a.Rsp verification: | - ./chip-tool doorlock set-user 0 2 xxx 6452 3 0 0 1 1 --timedInteractionTimeoutMs 1000 + ./chip-tool doorlock set-user 0 2 xxx 6452 1 0 0 1 1 --timedInteractionTimeoutMs 1000 Via the TH (chip-tool), verify the SUCCESS response for setting the users details. @@ -459,15 +459,6 @@ tests: [1658994912.123915][4290:4295] CHIP:DMG: status = 0x00 (SUCCESS), [1658994912.123959][4290:4295] CHIP:DMG: }, [1658994912.124003][4290:4295] CHIP:DMG: - [1658994912.124039][4290:4295] CHIP:DMG: }, - [1658994912.124079][4290:4295] CHIP:DMG: - [1658994912.124110][4290:4295] CHIP:DMG: }, - [1658994912.124147][4290:4295] CHIP:DMG: - [1658994912.124176][4290:4295] CHIP:DMG: ], - [1658994912.124212][4290:4295] CHIP:DMG: - [1658994912.124241][4290:4295] CHIP:DMG: InteractionModelRevision = 1 - [1658994912.124270][4290:4295] CHIP:DMG: }, - [1658994912.124341][4290:4295] CHIP:DMG: Received Command Response Status for Endpoint=1 Cluster=0x0000_0101 Command=0x0000_001A Status=0x0 disabled: true - label: "Step 5b: TH reads the LockUserChange event from DUT" @@ -631,7 +622,7 @@ tests: [1658995364.178185][4383:4388] CHIP:DMG: }, - ./chip-tool doorlock set-user 0 1 xxx 6452 3 0 0 1 1 --timedInteractionTimeoutMs 1000 + ./chip-tool doorlock set-user 0 1 xxx 6452 1 0 0 1 1 --timedInteractionTimeoutMs 1000 Via the TH (chip-tool), verify the SUCCESS response for setting the users details. diff --git a/src/app/tests/suites/certification/Test_TC_FAN_1_1.yaml b/src/app/tests/suites/certification/Test_TC_FAN_1_1.yaml index 8f9488832969b1..bcda3fadbe0248 100644 --- a/src/app/tests/suites/certification/Test_TC_FAN_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_FAN_1_1.yaml @@ -116,7 +116,7 @@ tests: type: bitmap32 hasMasksSet: [0x20] - - label: "Step 4: Read the global attribute: AttributeList" + - label: "Step 4a: Read the global attribute: AttributeList" PICS: PICS_EVENT_LIST_ENABLED command: "readAttribute" attribute: "AttributeList" @@ -125,7 +125,7 @@ tests: type: list contains: [0, 1, 2, 3, 65528, 65529, 65530, 65531, 65532, 65533] - - label: "Step 4: Read the global attribute: AttributeList" + - label: "Step 4a: Read the global attribute: AttributeList" PICS: "!PICS_EVENT_LIST_ENABLED" command: "readAttribute" attribute: "AttributeList" @@ -135,7 +135,7 @@ tests: contains: [0, 1, 2, 3, 65528, 65529, 65531, 65532, 65533] - label: - "Step 4: Read the feature dependent FAN.S.F00 (SPD) attribute in + "Step 4c: Read the feature dependent FAN.S.F00 (SPD) attribute in AttributeList" PICS: FAN.S.F00 command: "readAttribute" @@ -146,7 +146,7 @@ tests: contains: [4, 5, 6] - label: - "Step 4: Read the feature dependent FAN.S.F02(RCK) attribute in + "Step 4d: Read the feature dependent FAN.S.F02(RCK) attribute in AttributeList" PICS: FAN.S.F02 command: "readAttribute" @@ -157,7 +157,7 @@ tests: contains: [7, 8] - label: - "Step 4: Read the feature dependent FAN.S.F03(WND) attribute in + "Step 4e: Read the feature dependent FAN.S.F03(WND) attribute in AttributeList" PICS: FAN.S.F03 command: "readAttribute" @@ -168,7 +168,7 @@ tests: contains: [9, 10] - label: - "Step 4: Read the feature dependent FAN.S.F05(DIR) attribute in + "Step 4f: Read the feature dependent FAN.S.F05(DIR) attribute in AttributeList" PICS: FAN.S.F05 command: "readAttribute" @@ -178,6 +178,15 @@ tests: type: list contains: [11] + - label: "Step 5: TH reads EventList attribute from DUT" + PICS: PICS_EVENT_LIST_ENABLED + command: "readAttribute" + attribute: "EventList" + response: + value: [] + constraints: + type: list + - label: "Step 6: Read the global attribute: AcceptedCommandList" PICS: " !FAN.S.C00.Rsp " command: "readAttribute" diff --git a/src/app/tests/suites/certification/Test_TC_MOD_1_1.yaml b/src/app/tests/suites/certification/Test_TC_MOD_1_1.yaml index bb24a3fb9600c2..c49d1158d8e60a 100644 --- a/src/app/tests/suites/certification/Test_TC_MOD_1_1.yaml +++ b/src/app/tests/suites/certification/Test_TC_MOD_1_1.yaml @@ -31,23 +31,13 @@ tests: - name: "nodeId" value: nodeId - #Issue: https://github.com/project-chip/connectedhomeip/issues/26445 - - label: "Step 2: TH reads the ClusterRevision attribute from the DUT" - verification: | - ./chip-tool modeselect read cluster-revision 1 1 - - Verify the "ClusterRevision" value is of unit16 and reflects the highest revision number 2 on the TH(Chip-tool) and below is the sample log provided for the raspi platform: - - [1645775623.658997][3277:3282] CHIP:TOO: ClusterRevision: 1 - cluster: "LogCommands" - command: "UserPrompt" - PICS: PICS_USER_PROMPT - arguments: - values: - - name: "message" - value: "Please enter 'y' for success" - - name: "expectedValue" - value: "y" + - label: "Step 2: Read the global attribute: ClusterRevision" + command: "readAttribute" + attribute: "ClusterRevision" + response: + value: 2 + constraints: + type: int16u - label: "Step 3: TH reads the FeatureMap attribute from the DUT" PICS: MOD.S.F00 diff --git a/src/app/tests/suites/certification/ci-pics-values b/src/app/tests/suites/certification/ci-pics-values index 7939c1fbac91d9..0cc6c167c3cdb6 100644 --- a/src/app/tests/suites/certification/ci-pics-values +++ b/src/app/tests/suites/certification/ci-pics-values @@ -447,7 +447,7 @@ AUDIOOUTPUT.S.C01.Rsp=1 AUDIOOUTPUT.C=1 AUDIOOUTPUT.C.C00.Tx=1 AUDIOOUTPUT.C.C01.Tx=1 -AUDIOOUTPUT.S.F00=0 +AUDIOOUTPUT.S.F00=1 TGTNAV.S=1 TGTNAV.S.A0000=1 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 429acf1a76a20d..7e1221dc650fd1 100644 --- a/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h +++ b/zzz_generated/darwin-framework-tool/zap-generated/test/Commands.h @@ -46417,72 +46417,80 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { err = TestStep3gGivenFansf05dirEnsureFeaturemapHasTheCorrectBitSet_8(); break; case 9: - ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 9 : Step 4a: Read the global attribute: AttributeList\n"); if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4ReadTheGlobalAttributeAttributeList_9(); + err = TestStep4aReadTheGlobalAttributeAttributeList_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4: Read the global attribute: AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 4a: Read the global attribute: AttributeList\n"); if (ShouldSkip("!PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } - err = TestStep4ReadTheGlobalAttributeAttributeList_10(); + err = TestStep4aReadTheGlobalAttributeAttributeList_10(); break; case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4: Read the feature dependent FAN.S.F00 (SPD) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 4c: Read the feature dependent FAN.S.F00 (SPD) attribute in AttributeList\n"); if (ShouldSkip("FAN.S.F00")) { NextTest(); return; } - err = TestStep4ReadTheFeatureDependentFansf00SpdAttributeInAttributeList_11(); + err = TestStep4cReadTheFeatureDependentFansf00SpdAttributeInAttributeList_11(); break; case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4: Read the feature dependent FAN.S.F02(RCK) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 4d: Read the feature dependent FAN.S.F02(RCK) attribute in AttributeList\n"); if (ShouldSkip("FAN.S.F02")) { NextTest(); return; } - err = TestStep4ReadTheFeatureDependentFansf02rckAttributeInAttributeList_12(); + err = TestStep4dReadTheFeatureDependentFansf02rckAttributeInAttributeList_12(); break; case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 4: Read the feature dependent FAN.S.F03(WND) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 4e: Read the feature dependent FAN.S.F03(WND) attribute in AttributeList\n"); if (ShouldSkip("FAN.S.F03")) { NextTest(); return; } - err = TestStep4ReadTheFeatureDependentFansf03wndAttributeInAttributeList_13(); + err = TestStep4eReadTheFeatureDependentFansf03wndAttributeInAttributeList_13(); break; case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 4: Read the feature dependent FAN.S.F05(DIR) attribute in AttributeList\n"); + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 4f: Read the feature dependent FAN.S.F05(DIR) attribute in AttributeList\n"); if (ShouldSkip("FAN.S.F05")) { NextTest(); return; } - err = TestStep4ReadTheFeatureDependentFansf05dirAttributeInAttributeList_14(); + err = TestStep4fReadTheFeatureDependentFansf05dirAttributeInAttributeList_14(); break; case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6: Read the global attribute: AcceptedCommandList\n"); + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 5: TH reads EventList attribute from DUT\n"); + if (ShouldSkip("PICS_EVENT_LIST_ENABLED")) { + NextTest(); + return; + } + NextTest(); + return; + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 6: Read the global attribute: AcceptedCommandList\n"); if (ShouldSkip(" !FAN.S.C00.Rsp ")) { NextTest(); return; } - err = TestStep6ReadTheGlobalAttributeAcceptedCommandList_15(); + err = TestStep6ReadTheGlobalAttributeAcceptedCommandList_16(); break; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 6: Read the optional command (Step) in AcceptedCommandList\n"); + case 17: + ChipLogProgress(chipTool, " ***** Test Step 17 : Step 6: Read the optional command (Step) in AcceptedCommandList\n"); if (ShouldSkip("FAN.S.C00.Rsp")) { NextTest(); return; } - err = TestStep6ReadTheOptionalCommandStepInAcceptedCommandList_16(); + err = TestStep6ReadTheOptionalCommandStepInAcceptedCommandList_17(); break; - case 17: - ChipLogProgress(chipTool, " ***** Test Step 17 : Step 7: Read the global attribute: GeneratedCommandList\n"); - err = TestStep7ReadTheGlobalAttributeGeneratedCommandList_17(); + case 18: + ChipLogProgress(chipTool, " ***** Test Step 18 : Step 7: Read the global attribute: GeneratedCommandList\n"); + err = TestStep7ReadTheGlobalAttributeGeneratedCommandList_18(); break; } @@ -46549,6 +46557,9 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { case 17: VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); break; + case 18: + VerifyOrReturn(CheckValue("status", chip::to_underlying(status.mStatus), 0)); + break; } // Go on to the next test. @@ -46559,7 +46570,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { private: std::atomic_uint16_t mTestIndex; - const uint16_t mTestCount = 18; + const uint16_t mTestCount = 19; chip::Optional mNodeId; chip::Optional mCluster; @@ -46736,7 +46747,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheGlobalAttributeAttributeList_9() + CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_9() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46744,7 +46755,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 4: Read the global attribute: AttributeList Error: %@", err); + NSLog(@"Step 4a: Read the global attribute: AttributeList Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46766,7 +46777,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheGlobalAttributeAttributeList_10() + CHIP_ERROR TestStep4aReadTheGlobalAttributeAttributeList_10() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46774,7 +46785,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 4: Read the global attribute: AttributeList Error: %@", err); + NSLog(@"Step 4a: Read the global attribute: AttributeList Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46795,7 +46806,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheFeatureDependentFansf00SpdAttributeInAttributeList_11() + CHIP_ERROR TestStep4cReadTheFeatureDependentFansf00SpdAttributeInAttributeList_11() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46803,7 +46814,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 4: Read the feature dependent FAN.S.F00 (SPD) attribute in AttributeList Error: %@", err); + NSLog(@"Step 4c: Read the feature dependent FAN.S.F00 (SPD) attribute in AttributeList Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46818,7 +46829,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheFeatureDependentFansf02rckAttributeInAttributeList_12() + CHIP_ERROR TestStep4dReadTheFeatureDependentFansf02rckAttributeInAttributeList_12() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46826,7 +46837,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 4: Read the feature dependent FAN.S.F02(RCK) attribute in AttributeList Error: %@", err); + NSLog(@"Step 4d: Read the feature dependent FAN.S.F02(RCK) attribute in AttributeList Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46840,7 +46851,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheFeatureDependentFansf03wndAttributeInAttributeList_13() + CHIP_ERROR TestStep4eReadTheFeatureDependentFansf03wndAttributeInAttributeList_13() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46848,7 +46859,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 4: Read the feature dependent FAN.S.F03(WND) attribute in AttributeList Error: %@", err); + NSLog(@"Step 4e: Read the feature dependent FAN.S.F03(WND) attribute in AttributeList Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46862,7 +46873,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep4ReadTheFeatureDependentFansf05dirAttributeInAttributeList_14() + CHIP_ERROR TestStep4fReadTheFeatureDependentFansf05dirAttributeInAttributeList_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46870,7 +46881,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAttributeListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 4: Read the feature dependent FAN.S.F05(DIR) attribute in AttributeList Error: %@", err); + NSLog(@"Step 4f: Read the feature dependent FAN.S.F05(DIR) attribute in AttributeList Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -46883,7 +46894,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ReadTheGlobalAttributeAcceptedCommandList_15() + CHIP_ERROR TestStep6ReadTheGlobalAttributeAcceptedCommandList_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46907,7 +46918,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ReadTheOptionalCommandStepInAcceptedCommandList_16() + CHIP_ERROR TestStep6ReadTheOptionalCommandStepInAcceptedCommandList_17() { MTRBaseDevice * device = GetDevice("alpha"); @@ -46928,7 +46939,7 @@ class Test_TC_FAN_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep7ReadTheGlobalAttributeGeneratedCommandList_17() + CHIP_ERROR TestStep7ReadTheGlobalAttributeGeneratedCommandList_18() { MTRBaseDevice * device = GetDevice("alpha"); @@ -77444,12 +77455,8 @@ class Test_TC_MOD_1_1 : public TestCommandBridge { err = TestStep1WaitForTheCommissionedDeviceToBeRetrieved_0(); break; case 1: - ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: TH reads the ClusterRevision attribute from the DUT\n"); - if (ShouldSkip("PICS_USER_PROMPT")) { - NextTest(); - return; - } - err = TestStep2ThReadsTheClusterRevisionAttributeFromTheDut_1(); + ChipLogProgress(chipTool, " ***** Test Step 1 : Step 2: Read the global attribute: ClusterRevision\n"); + err = TestStep2ReadTheGlobalAttributeClusterRevision_1(); break; case 2: ChipLogProgress(chipTool, " ***** Test Step 2 : Step 3: TH reads the FeatureMap attribute from the DUT\n"); @@ -77584,14 +77591,28 @@ class Test_TC_MOD_1_1 : public TestCommandBridge { return WaitForCommissionee("alpha", value); } - CHIP_ERROR TestStep2ThReadsTheClusterRevisionAttributeFromTheDut_1() + CHIP_ERROR TestStep2ReadTheGlobalAttributeClusterRevision_1() { - chip::app::Clusters::LogCommands::Commands::UserPrompt::Type value; - value.message = chip::Span("Please enter 'y' for successgarbage: not in length on purpose", 28); - value.expectedValue.Emplace(); - value.expectedValue.Value() = chip::Span("ygarbage: not in length on purpose", 1); - return UserPrompt("alpha", value); + MTRBaseDevice * device = GetDevice("alpha"); + __auto_type * cluster = [[MTRBaseClusterModeSelect alloc] initWithDevice:device endpointID:@(1) queue:mCallbackQueue]; + VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); + + [cluster readAttributeClusterRevisionWithCompletion:^(NSNumber * _Nullable value, NSError * _Nullable err) { + NSLog(@"Step 2: Read the global attribute: ClusterRevision Error: %@", err); + + VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); + + { + id actualValue = value; + VerifyOrReturn(CheckValue("ClusterRevision", actualValue, 2U)); + } + + VerifyOrReturn(CheckConstraintType("clusterRevision", "int16u", "int16u")); + NextTest(); + }]; + + return CHIP_NO_ERROR; } CHIP_ERROR TestStep3ThReadsTheFeatureMapAttributeFromTheDut_2() @@ -100463,57 +100484,57 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { err = TestStep4dThReadsOptionalAttributeCurrentMaxRateInAttributeListFromDut_9(); break; case 10: - ChipLogProgress(chipTool, " ***** Test Step 10 : Step 5a: TH reads AcceptedCommandList from DUT\n"); - if (ShouldSkip(" !DGWIFI.S.F01 ")) { - NextTest(); - return; - } - err = TestStep5aThReadsAcceptedCommandListFromDut_10(); - break; - case 11: - ChipLogProgress(chipTool, " ***** Test Step 11 : Step 5b: TH reads Feature dependent(DGWIFI.S.F01) command in AcceptedCommandList from DUT\n"); - if (ShouldSkip("DGWIFI.S.F01")) { - NextTest(); - return; - } - err = TestStep5bThReadsFeatureDependentDGWIFISF01CommandInAcceptedCommandListFromDut_11(); - break; - case 12: - ChipLogProgress(chipTool, " ***** Test Step 12 : Step 6: TH reads GeneratedCommandList from DUT\n"); - err = TestStep6ThReadsGeneratedCommandListFromDut_12(); - break; - case 13: - ChipLogProgress(chipTool, " ***** Test Step 13 : Step 7a: TH reads EventList from DUT\n"); + ChipLogProgress(chipTool, " ***** Test Step 10 : Step 5a: TH reads EventList from DUT\n"); if (ShouldSkip(" !DGWIFI.S.E00 && !DGWIFI.S.E01 && !DGWIFI.S.E02 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 14: - ChipLogProgress(chipTool, " ***** Test Step 14 : Step 7b: TH reads optional attribute (Disconnection) in EventList from DUT\n"); + case 11: + ChipLogProgress(chipTool, " ***** Test Step 11 : Step 5b: TH reads optional attribute (Disconnection) in EventList from DUT\n"); if (ShouldSkip("DGWIFI.S.E00 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 15: - ChipLogProgress(chipTool, " ***** Test Step 15 : Step 7c: TH reads optional attribute (AssociationFailure) in EventList from DUT\n"); + case 12: + ChipLogProgress(chipTool, " ***** Test Step 12 : Step 5c: TH reads optional attribute (AssociationFailure) in EventList from DUT\n"); if (ShouldSkip("DGWIFI.S.E01 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; - case 16: - ChipLogProgress(chipTool, " ***** Test Step 16 : Step 7d: TH reads optional attribute (ConnectionStatus) in EventList from DUT\n"); + case 13: + ChipLogProgress(chipTool, " ***** Test Step 13 : Step 5d: TH reads optional attribute (ConnectionStatus) in EventList from DUT\n"); if (ShouldSkip("DGWIFI.S.E02 && PICS_EVENT_LIST_ENABLED")) { NextTest(); return; } NextTest(); return; + case 14: + ChipLogProgress(chipTool, " ***** Test Step 14 : Step 6a: TH reads AcceptedCommandList from DUT\n"); + if (ShouldSkip(" !DGWIFI.S.F01 ")) { + NextTest(); + return; + } + err = TestStep6aThReadsAcceptedCommandListFromDut_14(); + break; + case 15: + ChipLogProgress(chipTool, " ***** Test Step 15 : Step 6b: TH reads Feature dependent(DGWIFI.S.F01) command in AcceptedCommandList from DUT\n"); + if (ShouldSkip("DGWIFI.S.F01")) { + NextTest(); + return; + } + err = TestStep6bThReadsFeatureDependentDGWIFISF01CommandInAcceptedCommandListFromDut_15(); + break; + case 16: + ChipLogProgress(chipTool, " ***** Test Step 16 : Step 7: TH reads GeneratedCommandList from DUT\n"); + err = TestStep7ThReadsGeneratedCommandListFromDut_16(); + break; } if (CHIP_NO_ERROR != err) { @@ -100816,7 +100837,7 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5aThReadsAcceptedCommandListFromDut_10() + CHIP_ERROR TestStep6aThReadsAcceptedCommandListFromDut_14() { MTRBaseDevice * device = GetDevice("alpha"); @@ -100824,7 +100845,7 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 5a: TH reads AcceptedCommandList from DUT Error: %@", err); + NSLog(@"Step 6a: TH reads AcceptedCommandList from DUT Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -100840,7 +100861,7 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep5bThReadsFeatureDependentDGWIFISF01CommandInAcceptedCommandListFromDut_11() + CHIP_ERROR TestStep6bThReadsFeatureDependentDGWIFISF01CommandInAcceptedCommandListFromDut_15() { MTRBaseDevice * device = GetDevice("alpha"); @@ -100848,7 +100869,7 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeAcceptedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 5b: TH reads Feature dependent(DGWIFI.S.F01) command in AcceptedCommandList from DUT Error: %@", err); + NSLog(@"Step 6b: TH reads Feature dependent(DGWIFI.S.F01) command in AcceptedCommandList from DUT Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0)); @@ -100861,7 +100882,7 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { return CHIP_NO_ERROR; } - CHIP_ERROR TestStep6ThReadsGeneratedCommandListFromDut_12() + CHIP_ERROR TestStep7ThReadsGeneratedCommandListFromDut_16() { MTRBaseDevice * device = GetDevice("alpha"); @@ -100869,7 +100890,7 @@ class Test_TC_DGWIFI_1_1 : public TestCommandBridge { VerifyOrReturnError(cluster != nil, CHIP_ERROR_INCORRECT_STATE); [cluster readAttributeGeneratedCommandListWithCompletion:^(NSArray * _Nullable value, NSError * _Nullable err) { - NSLog(@"Step 6: TH reads GeneratedCommandList from DUT Error: %@", err); + NSLog(@"Step 7: TH reads GeneratedCommandList from DUT Error: %@", err); VerifyOrReturn(CheckValue("status", err ? err.code : 0, 0));