blob: 60c480a7aed7e111f578bc4ef90cede02b5f062a [file] [log] [blame]
# 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.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
3.2.2. [TC-SU-2.2] Handling different QueryImageResponse scenarios on
Requestor
PICS:
- MCORE.OTA.Requestor
config:
nodeId: 0x12344321
cluster: "Basic"
endpoint: 0
tests:
- label:
"DUT sends a QueryImage command to the TH/OTA-P. TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to UpdateAvailable.
Set ImageURI to the location where the image is located."
verification: |
Run the OTA Provider App using the command:
./chip-ota-provider-app --discriminator ${PROVIDER_LONG_DISCRIMINATOR} --secured-device-port ${PROVIDER_UDP_PORT} --KVS ${KVS_STORE_LOCATION} --filepath ${SW_IMAGE_FILE} -q updateAvailable
./chip-tool otasoftwareupdaterequestor announce-ota-provider 0xDEADBEEF 0 0 0 0x1234567890 0
where 0x1234567890 is OTA Requestor node ID and 0xDEADBEEF is OTA Provider node ID
Verify that the transfer of the software image happens all the way until the last Block is acknowledged on the OTA Provider logs:
[1645748688025] [99779:20370762] CHIP: [BDX] OutputEvent type: AckEOFReceived
[1645748688025] [99779:20370762] CHIP: [BDX] Transfer completed, got AckEOF
disabled: true
- label:
"DUT sends a QueryImage command to the TH/OTA-P. TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to Busy,
DelayedActionTime is set to 60 seconds."
verification: |
Run the OTA Provider App using the command:
./chip-ota-provider-app --discriminator ${PROVIDER_LONG_DISCRIMINATOR} --secured-device-port ${PROVIDER_UDP_PORT} --KVS ${KVS_STORE_LOCATION} --filepath ${SW_IMAGE_FILE} -q busy -t 60
./chip-tool otasoftwareupdaterequestor announce-ota-provider 0xDEADBEEF 0 0 0 0x1234567890 0
where 0x1234567890 is OTA Requestor node ID and 0xDEADBEEF is OTA Provider node ID
Verify that the DUT does not send a QueryImage command before the minimum interval defined by spec which is 2 minutes (120 seconds) from the last QueryImage command.
disabled: true
- label:
"DUT sends a QueryImage command to the TH/OTA-P. TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to NotAvailable."
verification: |
Run the OTA Provider App using the command:
./chip-ota-provider-app --discriminator ${PROVIDER_LONG_DISCRIMINATOR} --secured-device-port ${PROVIDER_UDP_PORT} --KVS ${KVS_STORE_LOCATION} --filepath ${SW_IMAGE_FILE} -q updateNotAvailable -t 60
./chip-tool otasoftwareupdaterequestor announce-ota-provider 0xDEADBEEF 0 0 0 0x1234567890 0
where 0x1234567890 is OTA Requestor node ID and 0xDEADBEEF is OTA Provider node ID
Verify that the DUT does not send a QueryImage command before the minimum interval defined by spec which is 2 minutes (120 seconds) from the last QueryImage command.
disabled: true
- label:
"DUT sends a QueryImage command to the TH/OTA-P.+ TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to Busy, Set
DelayedActionTime to 3 minutes. . On the subsequent QueryImage
command, TH/OTA-P sends a QueryImageResponse back to DUT. QueryStatus
is set to UpdateAvailable."
verification: |
Run the OTA Provider App using the command:
./chip-ota-provider-app --discriminator ${PROVIDER_LONG_DISCRIMINATOR} --secured-device-port ${PROVIDER_UDP_PORT} --KVS ${KVS_STORE_LOCATION} --filepath ${SW_IMAGE_FILE} -q busy -t 180
./chip-tool otasoftwareupdaterequestor announce-ota-provider 0xDEADBEEF 0 0 0 0x1234567890 0
where 0x1234567890 is OTA Requestor node ID and 0xDEADBEEF is OTA Provider node ID
Verify that the DUT waits for the time mentioned in the DelayedActionTime (3 minutes) before issuing another QueryImage command to the TH/OTA-P.
Verify there is a transfer of the software image after the second QueryImageResponse with UpdateAvailable status from the TH/OTA-P to the DUT.
disabled: true
- label:
"DUT sends a QueryImage command to the TH/OTA-P. TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to UpdateAvailable,
ImageURI should have the https url from where the image can be
downloaded."
PICS: MCORE.OTA.HTTPS
verification: |
Out of scope for V1.0
disabled: true
- label:
"DUT sends a QueryImage command to the TH/OTA-P. TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to UpdateAvailable,
Software Version should be set to the same or an older (numerically
lower) version."
verification: |
Run the OTA Provider App using the command:
./chip-ota-provider-app --discriminator ${PROVIDER_LONG_DISCRIMINATOR} --secured-device-port ${PROVIDER_UDP_PORT} --KVS ${KVS_STORE_LOCATION} --filepath ${SW_IMAGE_FILE}
Software Version of the SW_IMAGE_FILE used in above command should be the same or an older (numerically lower) version than the DUT.
./chip-tool otasoftwareupdaterequestor announce-ota-provider 0xDEADBEEF 0 0 0 0x1234567890 0
where 0x1234567890 is OTA Requestor node ID and 0xDEADBEEF is OTA Provider node ID
Verify that the DUT does not start transferring the software image.
disabled: true
- label:
"DUT sends a QueryImage command to the TH/OTA-P. TH/OTA-P sends a
QueryImageResponse back to DUT. QueryStatus is set to UpdateAvailable,
ImageURI field contains an invalid BDX ImageURI."
verification: |
Run the OTA Provider App using the command:
./chip-ota-provider-app --discriminator ${PROVIDER_LONG_DISCRIMINATOR} --secured-device-port ${PROVIDER_UDP_PORT} --KVS ${KVS_STORE_LOCATION} --filepath ${SW_IMAGE_FILE} -i bdx://0000000000000001
./chip-tool otasoftwareupdaterequestor announce-ota-provider 0xDEADBEEF 0 0 0 0x1234567890 0
where 0x1234567890 is OTA Requestor node ID and 0xDEADBEEF is OTA Provider node ID
Verify that the DUT does not start transferring the software image.
disabled: true