<!--
  ~ Copyright 2018-present Open Networking Foundation
  ~
  ~ 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.
  -->


<scenario name="net-trellis-p4-smoke"
          description="Trellis P4 network connectivity test steps">

    <group name="Net-Trellis-P4-Setup">

        <import file="${ONOS_SCENARIOS}/net-setup-trellis-p4.xml"/>

        <step name="Net-Trellis-P4-Smoke.Check-Summary"
              requires="Trellis-Net-P4-Setup.Wait-For-Mininet" delay="5"
              exec="onos-check-summary ${OC1} [0-9]* 4 8 0 [0-9]*"/>

        <import file="${ONOS_SCENARIOS}/net-trellis-p4-devices.xml"/>
        <dependency name="Net-Trellis-P4-Devices"
                    requires="Net-Trellis-P4-Smoke.Check-Summary"/>

        <import file="${ONOS_SCENARIOS}/net-trellis-p4-links.xml"/>
        <dependency name="Net-Trellis-P4-Links"
                    requires="Net-Trellis-P4-Smoke.Check-Summary"/>

        <import file="${ONOS_SCENARIOS}/net-trellis-p4-connectivity.xml"/>
        <dependency name="Net-Trellis-P4-Connectivity-Host-Discovery"
                    requires="Net-Trellis-P4-Smoke.Check-Summary"/>

        <import file="${ONOS_SCENARIOS}/net-trellis-p4-hosts.xml"/>
        <dependency name="Net-Trellis-P4-Hosts"
                    requires="Net-Trellis-P4-Connectivity-Host-Discovery"/>

        <!-- Check additional flow rules for discovered hosts -->
        <step name="Net-Trellis-P4-Smoke.Check-Summary-2"
              requires="Net-Trellis-P4-Connectivity-Host-Discovery" delay="3"
              exec="onos-check-summary ${OC1} [0-9]* 4 8 4 1[0-9][0-9]"/>

        <dependency name="Net-Trellis-P4-Connectivity-Bridging"
                    requires="Net-Trellis-P4-Smoke.Check-Summary-2"/>
        <dependency name="Net-Trellis-P4-Connectivity-Routing"
                    requires="Net-Trellis-P4-Smoke.Check-Summary-2,~Net-Trellis-P4-Connectivity-Bridging"/>

        <import file="${ONOS_SCENARIOS}/net-teardown.xml"/>
        <dependency name="Net-Teardown"
                    requires="~Net-Trellis-P4-Devices,~Net-Trellis-P4-Links,~Net-Trellis-P4-Hosts,~Net-Trellis-P4-Connectivity-Bridging,~Net-Trellis-P4-Connectivity-Routing"/>

        <parallel var="${OC#}">
            <step name="Net-Trellis-P4-Smoke-Check-Logs-${#}"
                  requires="~Net-Teardown"
                  exec="onos-check-logs ${OC#}"/>
        </parallel>
    </group>

</scenario>
