<!--
  ~ Copyright 2015-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-smoke" description="Basic network functionality smoke test">
    <group name="Net-Smoke">
        <import file="${ONOS_SCENARIOS}/net-setup.xml"/>

        <import file="${ONOS_SCENARIOS}/net-reactive-fwd.xml"/>
        <dependency name="Net-Reactive-Fwd" requires="Net-Setup"/>

        <import file="${ONOS_SCENARIOS}/net-host-intent.xml"/>
        <dependency name="Host-Intent-Connectivity" requires="Net-Reactive-Fwd"/>

        <import file="${ONOS_SCENARIOS}/net-point-intent.xml"/>
        <dependency name="P2P-Intent-Connectivity" requires="Net-Setup,~Host-Intent-Connectivity"/>

        <import file="${ONOS_SCENARIOS}/net-single-to-multi-intent.xml"/>
        <dependency name="S2M-Intent-Connectivity" requires="Net-Setup,~P2P-Intent-Connectivity"/>

        <import file="${ONOS_SCENARIOS}/net-multi-to-single-intent.xml"/>
        <dependency name="M2S-Intent-Connectivity" requires="Net-Setup,~S2M-Intent-Connectivity"/>

        <import file="${ONOS_SCENARIOS}/net-rest.xml"/>
        <dependency name="Net-REST" requires="Net-Setup,~M2S-Intent-Connectivity"/>

        <import file="${ONOS_SCENARIOS}/net-create-flows.xml"/>
        <dependency name="Net-Create-Flows" requires="Net-Setup,~Net-REST"/>

        <import file="${ONOS_SCENARIOS}/net-flow-objectives.xml"/>
        <dependency name="Net-Flow-Objectives" requires="Net-Setup,~Net-Create-Flows"/>

        <import file="${ONOS_SCENARIOS}/net-topo.xml"/>
        <dependency name="Net-Topo" requires="Net-Setup,~Net-Flow-Objectives"/>

        <import file="${ONOS_SCENARIOS}/net-teardown.xml"/>
        <dependency name="Net-Teardown" requires="~Net-Reactive-Fwd,
                                                  ~Host-Intent-Connectivity,
                                                  ~P2P-Intent-Connectivity,
                                                  ~S2M-Intent-Connectivity,
                                                  ~M2S-Intent-Connectivity,
                                                  ~Net-REST,
                                                  ~Net-Create-Flows,
                                                  ~Net-Topo"/>

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