<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,[2,10,300,11,1000]*10</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>0</host>
    </SLEEP>

    <TIMEOUT>
        # pingall timeout unit: ms
        <pingall>0.03</pingall>
    </TIMEOUT>

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

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

</PARAMS>
