blob: fa772eacb1d56ebc0ab55d95696d4b43d27ecea8 [file] [log] [blame]
# Copyright (c) 2023 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Events Tests
config:
nodeId: 0x12344321
endpoint: 1
cluster: "Unit Testing"
UnsupportedCluster: 0xFFF11FFF
UnsupportedEvent: 0xFFF11FFF
UnsupportedEndPoint: 254
ReadRequestMessage.Cluster: 0xFFF1FC05
ReadRequestMessage.Event: 0x0001
ReadRequestMessage.EndPoint: 1
tests:
- label: "Wait for the commissioned device to be retrieved"
cluster: "DelayCommands"
command: "WaitForCommissionee"
arguments:
values:
- name: "nodeId"
value: nodeId
- label:
"Read Request Message with a path that indicates a specific endpoint
that is unsupported"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: UnsupportedEndPoint
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response:
error: UNSUPPORTED_ENDPOINT
- label:
"Read Request Message with a path that indicates a specific cluster
that is unsupported"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: UnsupportedCluster
- name: "EventId"
value: ReadRequestMessage.Event
response:
error: UNSUPPORTED_CLUSTER
- label:
"Read Request Message with a path that indicates a specific event that
is unsupported"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: UnsupportedEvent
response: []
- label:
"Read Request Message with a path that indicates an event with no
results"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response: []
- label: "Create an event on the accessory"
command: "TestEmitTestEventRequest"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "arg1"
value: 1
- name: "arg2"
value: 2
- name: "arg3"
value: true
response:
values:
- name: "value"
saveAs: eventNumber
- label: "Read the event back"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response:
value: { arg1: 1, arg2: 2, arg3: true }
- label: "Read the event with eventNumber set to the event value"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
eventNumber: eventNumber
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response:
value: { arg1: 1, arg2: 2, arg3: true }
- label: "Read the event with eventNumber set to the event value + 1"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
eventNumber: eventNumber + 1
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response: []
- label: "Generate a second event on the accessory"
command: "TestEmitTestEventRequest"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "arg1"
value: 3
- name: "arg2"
value: 1
- name: "arg3"
value: false
response:
values:
- name: "value"
value: eventNumber + 1
- label: "Read the event back"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response:
- values:
- value: { arg1: 1, arg2: 2, arg3: true }
- values:
- value: { arg1: 3, arg2: 1, arg3: false }
- label: "Subscribe to the event"
cluster: "AnyCommands"
command: "SubscribeEventById"
endpoint: ReadRequestMessage.EndPoint
minInterval: 3
maxInterval: 5
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: ReadRequestMessage.Event
response:
- values:
- value: { arg1: 1, arg2: 2, arg3: true }
- values:
- value: { arg1: 3, arg2: 1, arg3: false }
- label: "Generate a third event on the accessory"
command: "TestEmitTestEventRequest"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "arg1"
value: 4
- name: "arg2"
value: 3
- name: "arg3"
value: true
response:
values:
- name: "value"
value: eventNumber + 2
- label: "Check for event report"
command: "waitForReport"
event: "TestEvent"
endpoint: ReadRequestMessage.EndPoint
response:
values:
- name: "TestEvent"
value: { arg1: 4, arg2: 3, arg3: true }
- label:
"Read Request Message with a path that indicates a specific
endpoint/cluster and a wildcard event"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: ReadRequestMessage.Cluster
- name: "EventId"
value: "*"
response:
- values:
- value: { arg1: 1, arg2: 2, arg3: true }
- values:
- value: { arg1: 3, arg2: 1, arg3: false }
- values:
- value: { arg1: 4, arg2: 3, arg3: true }
- label:
"Read Request Message with a path that indicates a specific
endpoint/event and a wildcard cluster"
cluster: "AnyCommands"
command: "ReadEventById"
endpoint: ReadRequestMessage.EndPoint
arguments:
values:
- name: "ClusterId"
value: "*"
- name: "EventId"
value: ReadRequestMessage.EndPoint
response:
# Not a valid event request path.
error: FAILURE