<PARAMS>
    # CASE - Description
    # 1 - Variable initialization and optional pull and build ONOS package
    # 2 - Install ONOS
    # 8 - Compare Topology
    # 9 - Report logs
    # 11 - Start Mininet
    # 12 - Assign switch to controller
    # 13 - Create a data of hosts information
    # 14 - Stop Mininet
    # 1000 - Test host intents
    # 2000 - Test point intents
    # 3000 - Test single to multi point intents
    # 4000 - Test multi to single point intents

    <testcases>1,[2,10,12,8,13,1000,2000,3000,4000,5000,9,14]*2,[2,11,12,8,13,1000,2000,3000,4000,5000,9,14]*2</testcases>

    <SCALE>
        <size>1,3,1,3</size>
    </SCALE>

    <DEPENDENCY>
        <path>/tests/FUNCintent/Dependency/</path>
        <wrapper1>startUp</wrapper1>
        <wrapper2>FuncIntentFunction</wrapper2>
        <wrapper3>topo</wrapper3>
        <topology>newFuncTopo.py</topology>
    </DEPENDENCY>

    <ENV>
        <cellApps>drivers,openflow,proxyarp,mobility</cellApps>
    </ENV>
    <GIT>
        <pull>False</pull>
        <branch>master</branch>
    </GIT>

    <SLEEP>
        <startup>15</startup>
        <reroute>5</reroute>
        <removeintent>5</removeintent>
        <checkintent>5</checkintent>
        <fwd>10</fwd>
    </SLEEP>

    <MININET>
        <switch>7</switch>
        <links>20</links>
    </MININET>

    # Intent tests params
    <SDNIP>
        <tcpProto>6</tcpProto>
        <icmpProto>1</icmpProto>
        <srcPort>5001</srcPort>
        <dstPort>5001</dstPort>
    </SDNIP>

</PARAMS>
