<!--
  ~ 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="smoke-test" description="ONOS smoke test">
    <import file="${ONOS_ROOT}/tools/test/scenarios/prerequisites.xml"/>

    <import file="${ONOS_ROOT}/tools/test/scenarios/setup.xml"/>
    <dependency name="Setup" requires="Prerequisites"/>

    <import file="${ONOS_ROOT}/tools/test/scenarios/basic-net.xml"/>
    <dependency name="Basic-Net" requires="Setup"/>

    <import file="${ONOS_ROOT}/tools/test/scenarios/archetypes.xml"/>
    <dependency name="Archetypes" requires="~Basic-Net,Setup"/>

    <import file="${ONOS_ROOT}/tools/test/scenarios/wrapup.xml"/>
    <dependency name="Wrapup" requires="~Archetypes,~Setup,~Basic-Net"/>
</scenario>
