<PARAMS>

    <testcases>0,1,2,1,2,1,2</testcases>

    <GRAPH>
        <nodeCluster>BM</nodeCluster>
        <builds>20</builds>
    </GRAPH>

    <SCALE>1,3,5</SCALE>
    <max>5</max>

    <ENV>
        <cellName>IntentInstallWithdrawCell</cellName>
        <cellApps>drivers,null</cellApps>
    </ENV>

    <TEST>
        <warmUp>5</warmUp>
        <sampleSize>20</sampleSize>
        <deviceCount>7</deviceCount>
        <intents>1,100,1000</intents>                       #list format, will be split on ','
        <ingress>null:0000000000000001/6</ingress>
        <egress>null:0000000000000007/5</egress>
        <debug>False</debug>
        <flowObj>False</flowObj>
     </TEST>

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

    <DEPENDENCY>
        <FILE1>intentInstallLatFuncs</FILE1>
        <PATH>/tests/SCPF/SCPFintentInstallWithdrawLat/dependencies/</PATH>
    </DEPENDENCY>

    <DATABASE>
        <dbName>/tmp/IntentInstallWithdrawLatDB</dbName>
        <dbFlowObj>/tmp/IntentInstallWithdrawLatDBWFO</dbFlowObj>
    </DATABASE>

    <ATTEMPTS>
        <verify>6</verify>
        <maxInvalidRun>5</maxInvalidRun>
        <cfg>5</cfg>
    </ATTEMPTS>

    <SLEEP>
        <startup>10</startup>
        <install>10</install>
        <verify>5</verify>
        <reroute>3</reroute>
        # timeout for pexpect
        <timeout>300</timeout>
    </SLEEP>

    <CFG>
        <intentManager>org.onosproject.net.intent.impl.IntentManager</intentManager>
        <intentConfigRegi>org.onosproject.net.intent.impl.compiler.IntentConfigurableRegistrator</intentConfigRegi>
        <nullProvider>org.onosproject.provider.nil.NullProviders</nullProvider>
    </CFG>

    <CTRL>
        <USER>sdn</USER>

        <ip1>OC1</ip1>
        <port1>6653</port1>

        <ip2>OC2</ip2>
        <port2>6653</port2>

        <ip3>OC3</ip3>
        <port3>6653</port3>

        <ip4>OC4</ip4>
        <port4>6653</port4>

        <ip5>OC5</ip5>
        <port5>6653</port5>

        <ip6>OC6</ip6>
        <port6>6653</port6>

        <ip7>OC7</ip7>
        <port7>6653</port7>
    </CTRL>

    <MN>
        <ip1>OCN</ip1>
    </MN>

    <BENCH>
        <user>sdn</user>
        <ip1>localhost</ip1>
    </BENCH>

    <ALARM>
        <maxInstallLat>20,22,50,45,50,120,41,50,100</maxInstallLat>
        <maxWithdrawLat>16,18,40,40,45,90,40,45,80</maxWithdrawLat>
        <maxInstallLatFlowObj>30,700,7000,60,500,3100,60,200,1800</maxInstallLatFlowObj>
        <maxWithdrawLatFlowObj>30,900,5500,60,300,3000,55,200,1700</maxWithdrawLatFlowObj>
    </ALARM>

</PARAMS>
