# 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:
    12.4.6. [TC-CNET-4.6] [Thread] FAILSAFE_REQUIRED message Validation
    [DUT-Server]

PICS:
    - CNET.S.F01

config:
    nodeId: 0x12344321
    cluster: "Network Commissioning"
    endpoint: 0
    PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET:
        type: octet_string
        defaultValue: "hex:1111111122222222"

tests:
    - label: "Precondition: TH reads FeatureMap attribute from the DUT"
      command: "readAttribute"
      attribute: "FeatureMap"
      response:
          value: 2
          constraints:
              type: bitmap32

    - label:
          "Step 1: TH sends the AddOrUpdateThreadNetwork command to the DUT with
          OperationalDataset field set to
          PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET and Breadcrumb field set to 1"
      PICS: CNET.S.C03.Rsp
      command: "AddOrUpdateThreadNetwork"
      arguments:
          values:
              - name: "OperationalDataset"
                value: PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET
              - name: "Breadcrumb"
                value: 1
      response:
          error: FAILSAFE_REQUIRED

    - label:
          "Step 2: TH sends RemoveNetwork command to the DUT with NetworkID
          field set to PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET and Breadcrumb
          field set to 1"
      PICS: CNET.S.C04.Rsp
      command: "RemoveNetwork"
      arguments:
          values:
              - name: "NetworkID"
                value: PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET
              - name: "Breadcrumb"
                value: 1
      response:
          error: FAILSAFE_REQUIRED

    - label:
          "Step 3: TH sends ConnectNetwork command to the DUT with NetworkID
          field set to PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET and Breadcrumb
          field set to 1"
      PICS: CNET.S.C06.Rsp
      command: "ConnectNetwork"
      arguments:
          values:
              - name: "NetworkID"
                value: PIXIT.CNET.THREAD_1ST_OPERATIONALDATASET
              - name: "Breadcrumb"
                value: 1
      response:
          error: FAILSAFE_REQUIRED
