blob: b26e0b2159edc076cc35b72790762dedd68056ba [file] [log] [blame]
# Copyright (c) 2022 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: Test Multi Admin
config:
nodeId: 0x12344321
nodeIdForDuplicateCommissioning:
type: node_id
defaultValue: 0x11
nodeId2:
type: node_id
defaultValue: 0xCAFE
nodeId3:
type: node_id
defaultValue: 0xC00FEE
endpoint: 0
discriminator:
type: int16u
defaultValue: 3840
payload:
type: char_string
defaultValue: "MT:-24J0AFN00KA0648G00" # This value needs to be generated automatically
tests:
- label: "Stop target device"
cluster: "SystemCommands"
command: "Stop"
- label:
"Start target device with the provided discriminator for basic
commissioning advertisement"
cluster: "SystemCommands"
command: "Start"
arguments:
values:
- name: "discriminator"
value: discriminator
- label: "Wait for the commissioned device to be retrieved for alpha"
cluster: "DelayCommands"
command: "WaitForCommissionee"
arguments:
values:
- name: "nodeId"
value: nodeId
- label: "Commission from alpha when the commissioning window is not opened"
identity: "alpha"
cluster: "CommissionerCommands"
command: "PairWithCode"
arguments:
values:
- name: "nodeId"
value: nodeIdForDuplicateCommissioning
- name: "payload"
value: payload
response:
error: FAILURE
- label: "Open Commissioning Window from alpha"
cluster: "AdministratorCommissioning"
command: "OpenBasicCommissioningWindow"
timedInteractionTimeoutMs: 10000
arguments:
values:
- name: "CommissioningTimeout"
value: 180
- label: "Commission from alpha again"
identity: "alpha"
cluster: "CommissionerCommands"
command: "PairWithCode"
arguments:
values:
- name: "nodeId"
value: nodeIdForDuplicateCommissioning
- name: "payload"
value: payload
response:
error: FAILURE
- label: "Check that we just have the one fabric and did not add a new one"
identity: "alpha"
cluster: "Operational Credentials"
command: "readAttribute"
attribute: "Fabrics"
fabricFiltered: false
response:
value: [{ "NodeId": nodeId }]
- label: "Close Commissioning Window after failed commissioning"
cluster: "AdministratorCommissioning"
command: "RevokeCommissioning"
timedInteractionTimeoutMs: 10000
- label: "Open Commissioning Window from alpha again"
cluster: "AdministratorCommissioning"
command: "OpenBasicCommissioningWindow"
timedInteractionTimeoutMs: 10000
arguments:
values:
- name: "CommissioningTimeout"
value: 180
- label: "Commission from beta"
identity: "beta"
cluster: "CommissionerCommands"
command: "PairWithCode"
arguments:
values:
- name: "nodeId"
value: nodeId2
- name: "payload"
value: payload
- label: "Wait for the commissioned device to be retrieved for beta"
identity: "beta"
cluster: "DelayCommands"
command: "WaitForCommissionee"
arguments:
values:
- name: "nodeId"
value: nodeId2
- label: "Open Commissioning Window from beta"
identity: "beta"
cluster: "AdministratorCommissioning"
command: "OpenBasicCommissioningWindow"
timedInteractionTimeoutMs: 10000
arguments:
values:
- name: "CommissioningTimeout"
value: 180
- label: "Commission from gamma"
identity: "gamma"
cluster: "CommissionerCommands"
command: "PairWithCode"
arguments:
values:
- name: "nodeId"
value: nodeId3
- name: "payload"
value: payload
- label: "Wait for the commissioned device to be retrieved for gamma"
identity: "gamma"
cluster: "DelayCommands"
command: "WaitForCommissionee"
arguments:
values:
- name: "nodeId"
value: nodeId3
- label: "read the mandatory attribute: NodeLabel from alpha"
identity: "alpha"
cluster: "Basic"
command: "readAttribute"
attribute: "NodeLabel"
response:
value: ""
saveAs: readFromAlpha
- label: "write the mandatory attribute NodeLabel from beta"
identity: "beta"
cluster: "Basic"
command: "writeAttribute"
attribute: "NodeLabel"
arguments:
value: "written from beta"
- label: "read the mandatory attribute: NodeLabel from gamma"
identity: "gamma"
cluster: "Basic"
command: "readAttribute"
attribute: "NodeLabel"
response:
constraints:
notValue: readFromAlpha
- label: "write the mandatory attribute NodeLabel back to default"
identity: "alpha"
cluster: "Basic"
command: "writeAttribute"
attribute: "NodeLabel"
arguments:
value: readFromAlpha