<!--
  ~ Copyright 2015 Open Networking Laboratory
  ~
  ~ 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-host-intent" description="Network host intent connectivity test">
    <!-- TODO: parametrize this via recipes -->
    <group name="Host-Intent-Connectivity">
        <step name="Host-Intent.Uninstall-Reactive-Forwarding"
              exec="onos ${OC1} app deactivate org.onosproject.fwd org.onosproject.ifwd"/>
        <step name="Host-Intent.Check-Apps" requires="^"
              exec="onos-check-apps ${OC1} fwd,ifwd excludes"/>

        <step name="Host-Intent.Find-Host-1" requires="^"
              exec="onos-mininet sendAndExpect h1 ping -c1 -w1 h4 --expect ."/>
        <step name="Host-Intent.Find-Host-2" requires="^"
              exec="onos-mininet sendAndExpect h4 ping -c1 -w1 h1 --expect ."/>

        <step name="Host-Intent.Create-Intent" requires="^"
              exec="onos-create-intent ${OC1} h2h host 00:00:00:00:00:01/-1 00:00:00:00:00:04/-1"/>
        <step name="Host-Intent.Validate-Intent-Installed" requires="Host-Intent.Create-Intent"
              exec="onos-check-intent ${OC1} h2h INSTALLED"/>

        <import file="${ONOS_SCENARIOS}/net-link-down-up.xml" namespace="Host-Intent"/>
        <dependency name="Host-Intent.Net-Link-Down-Up"
                    requires="Host-Intent.Validate-Intent-Installed"/>

        <step name="Host-Intent.Validate-Intent-Installed-Still" requires="Host-Intent.Link-1-Down"
              exec="onos-check-intent ${OC1} h2h INSTALLED"/>

        <dependency name="Host-Intent.Link-2-Down"
                    requires="~Host-Intent.Validate-Intent-Installed-Still" />

        <step name="Host-Intent.Validate-Intent-Failed" requires="Host-Intent.Link-2-Down"
              exec="onos-check-intent ${OC1} h2h FAILED"/>

        <dependency name="Host-Intent.Link-1-Up"
                    requires="~Host-Intent.Validate-Intent-Failed" />

        <step name="Host-Intent.Validate-Intent-Installed-Again" requires="Host-Intent.Link-1-Up"
              exec="onos-check-intent ${OC1} h2h INSTALLED"/>

        <dependency name="Host-Intent.Ping-4"
                    requires="~Host-Intent.Validate-Intent-Installed-Again" />

        <step name="Host-Intent.Remove-Intent" requires="~Host-Intent.Net-Link-Down-Up"
              exec="onos ${OC1} remove-intent -p org.onosproject.cli h2h"/>
    </group>
</scenario>
