Skip to content

Commit

Permalink
[Group] Yaml test files for group messaging demonstration (#14360)
Browse files Browse the repository at this point in the history
* group demo test files

* remove group demo test files

* test comment and procedure

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>

* - Remove restyle
- Fix linux yaml tests

* generated files

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>
  • Loading branch information
2 people authored and pull[bot] committed Jul 26, 2023
1 parent 55ee3ee commit 258b871
Show file tree
Hide file tree
Showing 5 changed files with 5,517 additions and 4,650 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ jobs:
run: |
./scripts/run_in_build_env.sh \
"./scripts/tests/run_test_suite.py \
--target-skip-glob '{TestGroupDemoCommand,TestGroupDemoConfig}' \
--chip-tool ./out/linux-x64-chip-tool-${BUILD_VARIANT}${CHIP_TOOL_VARIANT}/chip-tool \
run \
--iterations 1 \
Expand Down Expand Up @@ -178,7 +179,7 @@ jobs:
./scripts/run_in_build_env.sh \
"./scripts/tests/run_test_suite.py \
--chip-tool ./out/darwin-x64-chip-tool-${BUILD_VARIANT}${CHIP_TOOL_VARIANT}/chip-tool \
--target-skip-glob '{TestGroupMessaging,TV_*}' \
--target-skip-glob '{TestGroupMessaging,TestGroupDemoCommand,TestGroupDemoConfig,TV_*}' \
run \
--iterations 1 \
--all-clusters-app ./out/darwin-x64-all-clusters-${BUILD_VARIANT}/chip-all-clusters-app \
Expand Down
12 changes: 9 additions & 3 deletions examples/chip-tool/templates/tests.js
Original file line number Diff line number Diff line change
Expand Up @@ -232,11 +232,8 @@ function getTests()
'TestDescriptorCluster',
'TestBasicInformation',
'TestIdentifyCluster',
'TestGroupsCluster',
'TestGroupKeyManagementCluster',
'TestOperationalCredentialsCluster',
'TestModeSelectCluster',
'TestGroupMessaging',
];

const SoftwareDiagnostics = [
Expand All @@ -254,6 +251,14 @@ function getTests()
'DL_LockUnlock',
];

const Groups = [
'TestGroupMessaging',
'TestGroupsCluster',
'TestGroupDemoCommand',
'TestGroupDemoConfig',
'TestGroupKeyManagementCluster',
];

const tests = [
BinaryInput, //
BooleanState, //
Expand Down Expand Up @@ -285,6 +290,7 @@ function getTests()
SoftwareDiagnostics, //
Subscriptions, //
DoorLock, //
Groups, //
];
return tests.flat(1);
}
Expand Down
171 changes: 171 additions & 0 deletions src/app/tests/suites/TestGroupDemoCommand.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
# Copyright (c) 2021 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# !!!!!!!!!! DO NOT RUN IN CI - ONLY USED IN MANUAL GROUP MESSAGING DEMONSTRATION !!!!!!!!!!

# This test file is used in the group messaging demonstration to send on/off commands to light-apps that have been added to the group with TestGroupDemoConfig
# This file is used in tandem with TestGroupDemoConfig that configures the light-apps.
#
# To run this test file : chip-tool tests TestGroupDemoCommand <nodeid>
# The nodeid isn't used in the actual tests, but it is necessary with the current test infrastructure.
# Use the node id of one of the commisioned light-apps.
#
# Full test procedure :
# chip-tool tests TestGroupDemoConfig <nodeid> - Run this command for every light app nodeid that will be used for the demonstration
# chip-tool tests TestGroupDemoCommand <nodeid>
name: Group Messaging Demo Commands

config:
cluster: "Basic"
endpoint: 0

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

# Toggle 1
- label: "Turn On the light to see attribute change"
cluster: "On/Off"
command: "On"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

- label: "Turn Off the light to see attribute change"
cluster: "On/Off"
command: "Off"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

# Toggle 2
- label: "Turn On the light to see attribute change"
cluster: "On/Off"
command: "On"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

- label: "Turn Off the light to see attribute change"
cluster: "On/Off"
command: "Off"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

# Toggle 3
- label: "Turn On the light to see attribute change"
cluster: "On/Off"
command: "On"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

- label: "Turn Off the light to see attribute change"
cluster: "On/Off"
command: "Off"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

# Toggle 4
- label: "Turn On the light to see attribute change"
cluster: "On/Off"
command: "On"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

- label: "Turn Off the light to see attribute change"
cluster: "On/Off"
command: "Off"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

# Toggle 5
- label: "Turn On the light to see attribute change"
cluster: "On/Off"
command: "On"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000

- label: "Turn Off the light to see attribute change"
cluster: "On/Off"
command: "Off"
groupId: "4660"

- label: "Wait 100ms"
cluster: "DelayCommands"
command: "WaitForMs"
arguments:
values:
- name: "ms"
value: 1000
51 changes: 51 additions & 0 deletions src/app/tests/suites/TestGroupDemoConfig.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Copyright (c) 2021 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# !!!!!!!!!! DO NOT RUN IN CI - ONLY USED IN MANUAL GROUP MESSAGING DEMONSTRATION !!!!!!!!!!

# This test file is used in the group messaging demonstration to configure light-apps
# Run this test on a commisionned device to add it to the group.
# This file is used in tandem with TestGroupDemoCommand that sends the actual commands.
#
# To run this test file : chip-tool tests TestGroupDemoConfig <nodeid>
#
# Full test procedure :
# chip-tool tests TestGroupDemoConfig <nodeid> - Run this command for every light app nodeid that will be used for the demonstration
# chip-tool tests TestGroupDemoCommand <nodeid>
name: Group Messaging Demo - Configuration

config:
cluster: "Groups"
endpoint: 0

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

- label: "Add Group 1 - endpoint 1"
command: "AddGroup"
endpoint: 1
arguments:
values:
- name: "groupId"
value: 0x1234
- name: "groupName"
value: "Group #1"
response:
values:
- name: "status"
value: 0
- name: "groupId"
value: 0x1234
Loading

0 comments on commit 258b871

Please sign in to comment.