<PARAMS>

    # 1 - optional pull and build ONOS package
    # 2 - set cell and install ONOS
    # 10 - start mininet
    # 11 - pingall and verify topo
    # 100 - balance master and bring onos node down
    # 200 - bring onos node up and balance masters
    # 1000 - report logs
    # 1,[2,10,300,11,100,300,11,200,300,11,1000]*3
    <testcases>1,[3,2,10,300,11,1000]*7,3</testcases>

    <DEPENDENCY>
        <path>/tests/SCPF/SCPFscaleTopo/dependencies/</path>
        <wrapper1>startUp</wrapper1>
        <wrapper2>scaleTopoFunction</wrapper2>
        <wrapper3>topo</wrapper3>
        <multiovs>multiovs.py</multiovs>
    </DEPENDENCY>

    <TsharkPath>/tmp/scaleTopo_tshark_role_request</TsharkPath>

    <DATABASE>
        <dbPath>/tmp/scaleTopoResultDb</dbPath>
    </DATABASE>

    <ENV>
        <cellApps>drivers</cellApps>
    </ENV>

    <SearchTerm>
        <start>New switch connection</start>
        <end>Topology DefaultTopology</end>
        <Disconnect>Switch disconnected callback</Disconnect>
        <roleRequest>of_role_request</roleRequest>
    </SearchTerm>

    <GIT>
        <pull>False</pull>
        <branch>master</branch>
    </GIT>

    <CTRL>
        <port>6653</port>
        <numCtrls>3</numCtrls>
    </CTRL>

    <SLEEP>
        <startup>15</startup>
        <balance>10</balance>
        <nodeSleep>10</nodeSleep>
        <pingall>15</pingall>
        <MNsleep>60</MNsleep>
        <host>20</host>
    </SLEEP>

    <TIMEOUT>
        # pingall timeout unit: ms
        <pingall>0.03</pingall>
        # others unit: s
        <basicMininet>1000</basicMininet>
        <startNet>50</startNet>
        <stopNet>60</stopNet>
        <update>40</update>
        <links>60</links>
    </TIMEOUT>

    <ATTEMPTS>
        <topoCmp>1</topoCmp>
        <pingall>3</pingall>
    </ATTEMPTS>

    <TOPOLOGY>
        <topology>torus</topology>
        <scale>10,20,30,40,50,55,60</scale>
        <host>True</host>
    </TOPOLOGY>

</PARAMS>
