<!--
  ~ Copyright 2017-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="vnet1-test" description="vnet 1 test">
        <import file="${ONOS_SCENARIOS}/net-setup.xml"/>
        <dependency name="Net-Setup"/>

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

        <step name="Check-ping-does-not-work-1" requires="Net-Deactivate-Fwd"
              exec="onos-mininet sendAndExpect h1 ping -c3 h2 --expect \ 100% packet loss"/>

        <import file="${ONOS_SCENARIOS}/net-setup-vnet1.xml"/>
        <dependency name="Net-Setup-Vnet1" requires="Check-ping-does-not-work-1"/>

        <import file="${ONOS_SCENARIOS}/net-activate-fwdvn.xml"/>
        <dependency name="Net-Activate-Fwdvn" requires="Net-Setup-Vnet1"/>

        <step name="Check-ping-does-work-1" requires="Net-Activate-Fwdvn"
              exec="onos-mininet sendAndExpect h1 ping -c3 h2 --expect \ 0% packet loss"/>

        <import file="${ONOS_SCENARIOS}/net-deactivate-fwdvn.xml"/>
        <dependency name="Net-Deactivate-Fwdvn" requires="Check-ping-does-work-1"/>

         <step name="Check-ping-does-not-work-2" requires="Net-Deactivate-Fwdvn"
               exec="onos-mininet sendAndExpect h1 ping -c3 h2 --expect \ 100% packet loss"/>

        <import file="${ONOS_SCENARIOS}/net-teardown-vnet1.xml"/>
        <dependency name="Net-Teardown-Vnet1" requires="~Net-Deactivate-Fwdvn,~Check-ping-does-not-work-2"/>

        <import file="${ONOS_SCENARIOS}/net-teardown.xml"/>
        <dependency name="Net-Teardown" requires="~Net-Teardown-Vnet1"/>
</scenario>
