<!--
  ~ 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="Uninstall-Reactive-Forwarding"
              exec="onos ${OC1} app deactivate org.onosproject.fwd org.onosproject.ifwd"/>

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

        <step name="Create-Intent" requires="^"
              exec="onos ${OCI} add-host-intent 00:00:00:00:00:01/-1 00:00:00:00:00:04/-1"/>

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

        <step name="Remove-Intent" requires="Host-Intent.Net-Link-Down-Up"
              exec="onos ${OCI} remove-intent --purge"/>
    </group>
</scenario>