# 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: 15.4.1. [TC-SC-4.1] Commissionable Node Discovery [DUT as Commissionee]

PICS:
    - MCORE.ROLE.COMMISSIONEE

config:
    nodeId: 0x12344321
    cluster: "Basic Information"
    endpoint: 0

tests:
    - label:
          "DUT is Commissioned and put in Commissioning Mode using Open Basic
          Commissioning Window command and starts advertising Commissionable
          Node Discovery service using DNS-SD"
      PICS: CADMIN.S.C01.Rsp
      verification: |
          ./chip-tool administratorcommissioning open-basic-commissioning-window 200 1 0 --timedInteractionTimeoutMs 1000

          verify success on TH (Chip-tool) Logs:

          [1652340903.034346][2874:2879] CHIP:DMG: InvokeResponseMessage =
          [1652340903.034398][2874:2879] CHIP:DMG: {
          [1652340903.034447][2874:2879] CHIP:DMG:         suppressResponse = false,
          [1652340903.034499][2874:2879] CHIP:DMG:         InvokeResponseIBs =
          [1652340903.034565][2874:2879] CHIP:DMG:         [
          [1652340903.034615][2874:2879] CHIP:DMG:                 InvokeResponseIB =
          [1652340903.034748][2874:2879] CHIP:DMG:                 {
          [1652340903.034806][2874:2879] CHIP:DMG:                         CommandStatusIB =
          [1652340903.034873][2874:2879] CHIP:DMG:                         {
          [1652340903.034936][2874:2879] CHIP:DMG:                                 CommandPathIB =
          [1652340903.035006][2874:2879] CHIP:DMG:                                 {
          [1652340903.035078][2874:2879] CHIP:DMG:                                         EndpointId = 0x0,
          [1652340903.035159][2874:2879] CHIP:DMG:                                         ClusterId = 0x3c,
          [1652340903.035223][2874:2879] CHIP:DMG:                                         CommandId = 0x1,
          [1652340903.035291][2874:2879] CHIP:DMG:                                 },
          [1652340903.035362][2874:2879] CHIP:DMG:
          [1652340903.035423][2874:2879] CHIP:DMG:                                 StatusIB =
          [1652340903.035495][2874:2879] CHIP:DMG:                                 {
          [1652340903.035566][2874:2879] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1652340903.035634][2874:2879] CHIP:DMG:                                 },
          [1652340903.035704][2874:2879] CHIP:DMG:
          [1652340903.035763][2874:2879] CHIP:DMG:                         },
          [1652340903.035841][2874:2879] CHIP:DMG:
          [1652340903.035898][2874:2879] CHIP:DMG:                 },
          [1652340903.035965][2874:2879] CHIP:DMG:
          [1652340903.036014][2874:2879] CHIP:DMG:         ],
          [1652340903.036077][2874:2879] CHIP:DMG:
          [1652340903.036126][2874:2879] CHIP:DMG:         InteractionModelRevision = 1
          [1652340903.036175][2874:2879] CHIP:DMG: },
          [1652340903.036294][2874:2879] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
          [1652340903.036375][2874:2879] CHIP:DMG: ICR moving to [AwaitingDe]

          The delay timer is given 200 as an example , use whatever works for your product
      disabled: true

    - label: "Check DNS-SD subtypes used by DUT"
      PICS:
          " MCORE.COM.WIFI && MCORE.COM.ETH && MCORE.COM.THR &&
          MCORE.SC.VENDOR_SUBTYPE && MCORE.SC.DEVTYPE_SUBTYPE && MCORE.SC.VP_KEY
          && MCORE.SC.SII_OP_DISCOVERY_KEY && MCORE.SC.SAI_OP_DISCOVERY_KEY &&
          MCORE.SC.DT_KEY && MCORE.SC.DN_KEY && MCORE.SC.RI_KEY &&
          MCORE.SC.PH_KEY && MCORE.SC.PI_KEY "
      verification: |
          Run the below commands within the mentioned time interval used in open-commissioning-window in step-1.
          Run the below avahi browse command in the TH terminal

          avahi-browse -rt _matterc._udp


          ubuntu@ubuntu:~$   avahi-browse -rt _matterc._udp

          Verify the device is advertising _matterc._udp service like below output in TH terminal Log: (Verify for the DUT's actual values (like vendor ID, PID ..etc) as mentioned in the expected outcome of the test plan, The below log contains the data from the reference raspi accessory)


          +  wlan0 IPv6 5A4E867284D08B13                              _matterc._udp        local
          +   eth0 IPv6 5A4E867284D08B13                              _matterc._udp        local
          =   eth0 IPv6 5A4E867284D08B13                              _matterc._udp        local
             hostname = [E45F010F1A010000.local]
             address = [fe80::e65f:1ff:fe0f:1a01]
             port = [5540]
             txt = ["PI=" "PH=36" "CM=1" "D=3840" "T=1" "VP=65521+32769"]
          =  wlan0 IPv6 5A4E867284D08B13                              _matterc._udp        local
             hostname = [E45F010F1A010000.local]
             address = [fe80::e65f:1ff:fe0f:1a01]
             port = [5540]
             txt = ["PI=" "PH=36" "CM=1" "D=3840" "T=1" "VP=65521+32769"]




          If we use Thread setup, then the Service Domain will be 422F10CDC290A406.local
          verify CM flag is 1

          to look for subtypes, on the raspi run $ avahi-browse -p _services._dns-sd._udp | grep _matterc

          +;eth0;IPv6;_matterc;_udp;local
          +;eth0;IPv6;_V65521;_sub._matterc._udp;local
          +;eth0;IPv6;_S15;_sub._matterc._udp;local
          +;eth0;IPv6;_L3840;_sub._matterc._udp;local
          +;eth0;IPv6;_CM;_sub._matterc._udp;local
      disabled: true

    - label:
          "DUT is rebooted, then put in Commissioning Mode using Open Basic
          Commissioning Window command, starting advertising Commissionable Node
          Discovery service using DNS-SD"
      PICS: CADMIN.S.C01.Rsp
      verification: |
          Reboot the device and commission the DUT again. Open the commissioning window using the below command in the TH (Chip-tool) terminal

          ./chip-tool administratorcommissioning open-basic-commissioning-window 200 1 0 --timedInteractionTimeoutMs 1000

          verify success on TH (Chip-tool) logs:

          [1652341174.803430][2893:2898] CHIP:DMG: InvokeResponseMessage =
          [1652341174.803488][2893:2898] CHIP:DMG: {
          [1652341174.803560][2893:2898] CHIP:DMG:         suppressResponse = false,
          [1652341174.803622][2893:2898] CHIP:DMG:         InvokeResponseIBs =
          [1652341174.803698][2893:2898] CHIP:DMG:         [
          [1652341174.803757][2893:2898] CHIP:DMG:                 InvokeResponseIB =
          [1652341174.803835][2893:2898] CHIP:DMG:                 {
          [1652341174.803897][2893:2898] CHIP:DMG:                         CommandStatusIB =
          [1652341174.803975][2893:2898] CHIP:DMG:                         {
          [1652341174.804047][2893:2898] CHIP:DMG:                                 CommandPathIB =
          [1652341174.804128][2893:2898] CHIP:DMG:                                 {
          [1652341174.804213][2893:2898] CHIP:DMG:                                         EndpointId = 0x0,
          [1652341174.804292][2893:2898] CHIP:DMG:                                         ClusterId = 0x3c,
          [1652341174.804377][2893:2898] CHIP:DMG:                                         CommandId = 0x1,
          [1652341174.804450][2893:2898] CHIP:DMG:                                 },
          [1652341174.804539][2893:2898] CHIP:DMG:
          [1652341174.804654][2893:2898] CHIP:DMG:                                 StatusIB =
          [1652341174.804738][2893:2898] CHIP:DMG:                                 {
          [1652341174.804821][2893:2898] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1652341174.804911][2893:2898] CHIP:DMG:                                 },
          [1652341174.804993][2893:2898] CHIP:DMG:
          [1652341174.805067][2893:2898] CHIP:DMG:                         },
          [1652341174.805152][2893:2898] CHIP:DMG:
          [1652341174.805220][2893:2898] CHIP:DMG:                 },
          [1652341174.805307][2893:2898] CHIP:DMG:
          [1652341174.805365][2893:2898] CHIP:DMG:         ],
          [1652341174.805439][2893:2898] CHIP:DMG:
          [1652341174.805497][2893:2898] CHIP:DMG:         InteractionModelRevision = 1
          [1652341174.805555][2893:2898] CHIP:DMG: },
          [1652341174.805690][2893:2898] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0001 Status=0x0
          [1652341174.805786][2893:2898] CHIP:DMG: ICR moving to [AwaitingDe]

          The delay timer is given 200 as an example , use whatever works for your product
      disabled: true

    - label: "Check DNS-SD subtypes used by DUT"
      PICS:
          " MCORE.COM.WIFI && MCORE.COM.ETH && MCORE.COM.THR &&
          MCORE.SC.VENDOR_SUBTYPE && MCORE.SC.DEVTYPE_SUBTYPE && MCORE.SC.VP_KEY
          && MCORE.SC.SII_OP_DISCOVERY_KEY && MCORE.SC.SAI_OP_DISCOVERY_KEY &&
          MCORE.SC.DT_KEY && MCORE.SC.DN_KEY && MCORE.SC.RI_KEY &&
          MCORE.SC.PH_KEY && MCORE.SC.PI_KEY "
      verification: |
          Run the below avahi browse command in  TH terminal

           avahi-browse -rt _matterc._udp

          Verify on  the below output in TH terminal Log:

          +  wlan0 IPv6 F6385CBB29F7CE93                              _matterc._udp        local
          +   eth0 IPv6 F6385CBB29F7CE93                              _matterc._udp        local
          =   eth0 IPv6 F6385CBB29F7CE93                              _matterc._udp        local
             hostname = [E45F010F1A010000.local]
             address = [fe80::e65f:1ff:fe0f:1a01]
             port = [5540]
             txt = ["PI=" "PH=36" "CM=1" "D=3840" "T=1" "VP=65521+32769"]
          =  wlan0 IPv6 F6385CBB29F7CE93                              _matterc._udp        local
             hostname = [E45F010F1A010000.local]
             address = [fe80::e65f:1ff:fe0f:1a01]
             port = [5540]
             txt = ["PI=" "PH=36" "CM=1" "D=3840" "T=1" "VP=65521+32769"]






          Service Domain 422F10CDC290A406.local
          verify CM flag is 1

          to look for subtypes, on the raspi run $ avahi-browse -p _services._dns-sd._udp | grep _matterc

          +;eth0;IPv6;_matterc;_udp;local
          +;eth0;IPv6;_V65521;_sub._matterc._udp;local
          +;eth0;IPv6;_S15;_sub._matterc._udp;local
          +;eth0;IPv6;_L3840;_sub._matterc._udp;local
          +;eth0;IPv6;_CM;_sub._matterc._udp;local
      disabled: true

    - label: "Wait for OBCW timeout to expire"
      verification: |
          Wait until open-basic-commissioning-window time to expire.
      disabled: true

    - label:
          "DUT is Commissioned and instructed to enter in commissioning mode
          using Open Commissioning Window command"
      PICS: CADMIN.S.C00.Rsp
      verification: |
          Run the below open-commissioning-window in TH Terminal

          ./chip-tool pairing open-commissioning-window 1 1 200 2000 3840

          verify success on TH (Chip-tool) logs:

          [1652341411.383669][2929:2934] CHIP:DMG: InvokeResponseMessage =
          [1652341411.383720][2929:2934] CHIP:DMG: {
          [1652341411.383769][2929:2934] CHIP:DMG:         suppressResponse = false,
          [1652341411.383821][2929:2934] CHIP:DMG:         InvokeResponseIBs =
          [1652341411.383886][2929:2934] CHIP:DMG:         [
          [1652341411.383936][2929:2934] CHIP:DMG:                 InvokeResponseIB =
          [1652341411.384009][2929:2934] CHIP:DMG:                 {
          [1652341411.384068][2929:2934] CHIP:DMG:                         CommandStatusIB =
          [1652341411.384139][2929:2934] CHIP:DMG:                         {
          [1652341411.384203][2929:2934] CHIP:DMG:                                 CommandPathIB =
          [1652341411.384278][2929:2934] CHIP:DMG:                                 {
          [1652341411.384349][2929:2934] CHIP:DMG:                                         EndpointId = 0x0,
          [1652341411.384427][2929:2934] CHIP:DMG:                                         ClusterId = 0x3c,
          [1652341411.384501][2929:2934] CHIP:DMG:                                         CommandId = 0x0,
          [1652341411.384624][2929:2934] CHIP:DMG:                                 },
          [1652341411.384722][2929:2934] CHIP:DMG:
          [1652341411.384795][2929:2934] CHIP:DMG:                                 StatusIB =
          [1652341411.384877][2929:2934] CHIP:DMG:                                 {
          [1652341411.384958][2929:2934] CHIP:DMG:                                         status = 0x00 (SUCCESS),
          [1652341411.385035][2929:2934] CHIP:DMG:                                 },
          [1652341411.385116][2929:2934] CHIP:DMG:
          [1652341411.385188][2929:2934] CHIP:DMG:                         },
          [1652341411.385271][2929:2934] CHIP:DMG:
          [1652341411.385337][2929:2934] CHIP:DMG:                 },
          [1652341411.385416][2929:2934] CHIP:DMG:
          [1652341411.385474][2929:2934] CHIP:DMG:         ],
          [1652341411.385547][2929:2934] CHIP:DMG:
          [1652341411.385605][2929:2934] CHIP:DMG:         InteractionModelRevision = 1
          [1652341411.385662][2929:2934] CHIP:DMG: },
          [1652341411.385794][2929:2934] CHIP:DMG: Received Command Response Status for Endpoint=0 Cluster=0x0000_003C Command=0x0000_0000 Status=0x0
          [1652341411.385860][2929:2934] CHIP:CTL: Successfully opened pairing window on the device
      disabled: true

    - label: "Check DNS-SD subtypes used by DUT"
      PICS:
          " MCORE.COM.WIFI && MCORE.COM.ETH && MCORE.COM.THR &&
          MCORE.SC.VENDOR_SUBTYPE && MCORE.SC.DEVTYPE_SUBTYPE && MCORE.SC.VP_KEY
          && MCORE.SC.SII_OP_DISCOVERY_KEY && MCORE.SC.SAI_OP_DISCOVERY_KEY &&
          MCORE.SC.DT_KEY && MCORE.SC.DN_KEY && MCORE.SC.RI_KEY &&
          MCORE.SC.PH_KEY && MCORE.SC.PI_KEY "
      verification: |
          Same verification steps as Step 3, Except Verify CM flag  value to be 2


          ubuntu@ubuntu:~$ avahi-browse -rt _matterc._udp

          Verify on  the below output in TH terminal Log:



          +  wlan0 IPv6 71DED0325CF9AB38                              _matterc._udp        local
          +   eth0 IPv6 71DED0325CF9AB38                              _matterc._udp        local
          =   eth0 IPv6 71DED0325CF9AB38                              _matterc._udp        local
             hostname = [E45F010F1A010000.local]
             address = [fe80::e65f:1ff:fe0f:1a01]
             port = [5540]
             txt = ["PI=" "PH=36" "CM=2" "D=3840" "T=1" "VP=65521+32769"]
          =  wlan0 IPv6 71DED0325CF9AB38                              _matterc._udp        local
             hostname = [E45F010F1A010000.local]
             address = [fe80::e65f:1ff:fe0f:1a01]
             port = [5540]
             txt = ["PI=" "PH=36" "CM=2" "D=3840" "T=1" "VP=65521+32769"]
      disabled: true

    - label: "Wait for OCW timeout to expire"
      verification: |
          Wait until open-commissioning-window time to expire.
      disabled: true

    - label: "If (MCORE.SC.EXTENDED_DISCOVERY ) enable Extended Discovery"
      PICS: MCORE.SC.EXTENDED_DISCOVERY
      verification: |
          If the device supports Discovery for an extended period of time, the Device should continue to advertise. Use the avahi-browse command and you should see the _matterc._udp advertisement


          Reference Raspberrypi device is not supporting extended discovery.
      disabled: true

    - label:
          "If (MCORE.SC.EXTENDED_DISCOVERY ) check DNS-SD subtypes used by DUT"
      PICS:
          " MCORE.SC.EXTENDED_DISCOVERY && MCORE.COM.WIFI && MCORE.COM.ETH &&
          MCORE.COM.THR && MCORE.SC.VENDOR_SUBTYPE && MCORE.SC.DEVTYPE_SUBTYPE
          && MCORE.SC.VP_KEY && MCORE.SC.SII_OP_DISCOVERY_KEY &&
          MCORE.SC.SAI_OP_DISCOVERY_KEY && MCORE.SC.DT_KEY && MCORE.SC.DN_KEY &&
          MCORE.SC.RI_KEY && MCORE.SC.PH_KEY && MCORE.SC.PI_KEY "
      verification: |
          Run and Verify on  the below output in TH terminal Log: (Below is the sample log , as RPI doesn't support the extended discovery)
          Verify the CM flag value is 0

          avahi-browse -rt _matterc._udp

          +   eth0 IPv6 DD200C20D25AE5F7                              _matterc._udp        local
          +   eth0 IPv4 DD200C20D25AE5F7                              _matterc._udp        local
          =   eth0 IPv6 DD200C20D25AE5F7                              _matterc._udp        local
             hostname = [matter-te-7.local]
             address = [fd00::e7]
             port = [11111]
             txt = ["CM=0" "D=840"]
          =   eth0 IPv4 DD200C20D25AE5F7                              _matterc._udp        local
             hostname = [matter-te-7.local]
             address = [192.168.3.53]
             port = [11111]
             txt = ["CM=0" "D=840"]
      disabled: true
